ID на статията: 256986 - Последна рецензия: 03 Декември 2007 г. - Редакция: 10.5

Описание на системния регистър на Microsoft Windows

На тази страница

Разгъване на всички | Сгъване на всички

КРАТКО ИЗЛОЖЕНИЕ

В тази статия се описва системният регистър. Освен това в нея се съдържа и информация за това, как се редактира регистърът, както и списък на източници на допълнителна информация.

ДОПЪЛНИТЕЛНА ИНФОРМАЦИЯ

Описание на системния регистър

Речникът на компютърни термини на Microsoft (пето издание) дефинира системния регистър като:
Централна йерархична база данни, която се използва от Microsoft Windows 9x, Windows CE, Windows NT и Windows 2000 за съхраняване на информация, необходима за конфигуриране на системата за един или повече потребители, приложения и хардуерни устройства.

Системният регистър съдържа информация, която Windows непрекъснато използва за справки по време на операции, като например профилите на всеки потребител, инсталираните приложения и типове документи, които всеки потребител може да създава, настройките на прозорците за редактиране на свойства на папки и икони на приложения, хардуерните устройства в системата и използваните портове.

Системният регистър заменя повечето базирани на текст .ini файлове, използвани в конфигурационните файлове на Windows 3.x и MS-DOS, като Autoexec.bat и Config.sys. Въпреки че той се среща в няколко операционни системи Windows, между системните регистри в тези системи има някои разлики.
Данните на системния регистър се съхраняват в двоични файлове.

Информация относно редактирането на системния регистър

Microsoft препоръчва при редактирането на системния регистър да спазвате само стъпките, които са описани в документацията на Microsoft. При възможност използвайте потребителския интерфейс на Windows, вместо да редактирате директно регистъра.

Можете да редактирате системния регистър с помощта на регистърен редактор (Regedit.exe или Regedt32.exe). Неправилното използване на редактора на системния регистър може да предизвика сериозни проблеми, които да наложат преинсталиране на вашата операционна система. Microsoft не гарантира, че проблемите, възникнали вследствие на неправилното използване на редактор на системни регистъри, могат да бъдат разрешени. Използвайте редактора на системния регистър на свой собствен риск. За допълнителна информация относно разликите между Regedit.exe and Regedt32.exe щракнете върху номера на статия по-долу, за да я отворите в Базата знания на Microsoft:
141377  (http://support.microsoft.com/kb/141377/ ) Разликите между Regedit.exe и Regedt32.exe (Тази връзка може да сочи към съдържание, което е отчасти или изцяло на английски)
Преди да модифицирате системния регистър, направете негово резервно копие, за да може да го възстановите впоследствие при възникване на проблем. Уверете се, че знаете как се прави това. За допълнителна информация как да създадете резервно копие и как да възстановите системния регистър щракнете върху номерата по-долу, за да отворите съответните статии в Базата знания на Microsoft:
322756  (http://support.microsoft.com/kb/322756/ ) Създаване на резервно копие, редактиране и възстановяване на системния регистър в Windows XP и Windows Server 2003 (Тази връзка може да сочи към съдържание, което е отчасти или изцяло на английски)
322755  (http://support.microsoft.com/kb/322755/ ) Създаване на резервно копие, редактиране и възстановяване на системния регистър в Windows 2000
323170  (http://support.microsoft.com/kb/323170/ ) Създаване на резервно копие, редактиране и възстановяване на системния регистър в Windows NT 4.0 (Тази връзка може да сочи към съдържание, което е отчасти или изцяло на английски)
322754  (http://support.microsoft.com/kb/322754/ ) Създаване на резервно копие, редактиране и възстановяване на системния регистър в Windows 95, Windows 98 и Windows Me (Тази връзка може да сочи към съдържание, което е отчасти или изцяло на английски)
За да променят данните в системния регистър, програмите трябва да използват функциите на регистъра, дефинирани на следния сайт на MSDN:
http://msdn2.microsoft.com/en-us/library/ms724875.aspx (http://msdn2.microsoft.com/en-us/library/ms724875.aspx)
Администраторите могат да нанасят промени в системния регистър с помощта на редактора на регистъра (Regedit.exe или Regedt32.exe), Group Policy (Групови правила), System Policy (Системни правила), файловете на системния регистър (.reg) или чрез стартиране на скриптове (например файлове във формат VisualBasic script).

Забележка Системният регистър в 64-битовите версии на Windows XP и Windows Server 2003 е разделен на 32-битови и 64-битови ключове. Много от 32-битовите ключове имат същите имена като техните 64-битови еквиваленти и обратно. 64-битовата версия на редактора на системния регистър (Registry Editor), включена по подразбиране в 64-битовите версии на Windows XP и Windows Server 2003, показва 32-битовите ключове под следния възел:
HKEY_LOCAL_MACHINE\Software\WOW6432
За допълнителна информация как да разгледате системния регистър на 64-битовите версии на Windows щракнете върху номера по-долу и ще отворите съответната статия в Базата знания на Microsoft:
305097  (http://support.microsoft.com/kb/305097/ ) Разглеждане на системния регистър на 64-битовите версии на Windows (Тази връзка може да сочи към съдържание, което е отчасти или изцяло на английски)
Зоната за навигация на редактора на системния регистър съдържа папки. Всяка папка представлява предварително дефиниран ключ на локалния компютър. При дистанционен достъп до системния регистър на отдалечен компютър се появяват само два предварително дефинирани ключа: HKEY_USERS и HKEY_LOCAL_MACHINE. Следната таблица съдържа списък с предварително дефинираните ключове, използвани от системата. Максималната дължина на име на ключ е 255 знака.
Сгъване на таблицатаРазгъване на таблицата
Папка/предварително дефиниран ключОписание
HKEY_CURRENT_USERСъдържа корена на конфигурационната информация за потребителя, който в момента е (логнат) в системата. Тук се съхраняват папките, екранните цветове и настройките на контролния панел на потребителя. Тази информация е свързана с профила на потребителя. Понякога наименованието на този ключ се съкращава като "HKCU".
HKEY_USERSСъдържа всички заредени потребителски профили, съдържащи се на компютъра. HKEY_CURRENT_USER е подключ на HKEY_USERS. Понякога наименованието HKEY_USERS се съкращава като "HKU".
HKEY_LOCAL_MACHINEСъдържа специфична за конкретния компютър конфигурационна информация (за който и да е потребител). Понякога наименованието на този ключ се съкращава като "HKLM".
HKEY_CLASSES_ROOTТова е подключ на HKEY_LOCAL_MACHINE\Software. Благодарение на съхраняваната тук информация при отваряне на файл с помощта на Windows Explorer се осигурява стартирането на правилната програма. Понякога наименованието на този ключ се съкращава като "HKCR". В Windows 2000 и в по-късните версии на Windows тази информация се съхранява както под ключа HKEY_LOCAL_MACHINE, така и под HKEY_CURRENT_USER. Ключът HKEY_LOCAL_MACHINE\Software\Classes съдържа настройките по подразбиране, които могат да се прилагат към всички потребители на локалния компютър. Ключът HKEY_LOCAL_MACHINE\Software\Classes съдържа настройките по подразбиране, които могат да се прилагат към всички потребители на локалния компютър. Ключът HKEY_CLASSES_ROOT предоставя изглед на системния регистър, в който се слива информацията от тези два източника. Освен това HKEY_CLASSES_ROOT предоставя този общ вид и за програми, разработени за по-ранните версии на Windows. За да се променят настройките за интерактивния потребител, промените трябва да бъдат направени под HKEY_CURRENT_USER\Software\Classes, вместо под HKEY_CLASSES_ROOT. За да промените настройките по подразбиране, промените трябва да бъдат направени под HKEY_LOCAL_MACHINE\Software\Classes. Ако записвате ключове към някой ключ под HKEY_CLASSES_ROOT, системата запаметява информацията под HKEY_LOCAL_MACHINE\Software\Classes. Ако задавате стойности на ключ под HKEY_CLASSES_ROOT и ключът вече съществува под HKEY_CURRENT_USER\Software\Classes, системата ще съхрани информацията там, вместо под HKEY_LOCAL_MACHINE\Software\Classes.
HKEY_CURRENT_CONFIGСъдържа информация за хардуерния профил, използван от локалния компютър по време на стартиране на системата.
Следната таблица съдържа списък с видовете данни, които са дефинирани към настоящия момент и се използват от Windows. Максималната дължина на име на стойност е:
  • Windows Server 2003 и Windows XP: 16383 знака
  • Windows 2000: 260 ANSI знака или 16383 Unicode знака
  • Windows Millennium Edition/Windows 98/Windows 95: 255 знака
Дълги стойности (над 2048 байта) трябва да се съхраняват като файлове, а имената на тези файлове се пазят в системния регистър. Това помага за ефективната работа на системния регистър. Максималната дължина на стойност е:
  • Windows NT 4.0/Windows 2000/Windows XP/Windows Server 2003: Наличната памет
  • Windows Millennium Edition/Windows 98/Windows 95: 16300 байта
Забележка Съществува лимит от 64K за общия размер на всички стойности на ключ.
Сгъване на таблицатаРазгъване на таблицата
ИмеВид данниОписание
Двоична стойностREG_BINARYНеструктурирани двоични данни По-голямата част на информацията за хардуерните компоненти се съхранява като двоични данни и се показва в редактора на системния регистър (Registry Editor) в шестнадесетичен формат.
DWORD стойностREG_DWORDДанни, представяни с число с дължина 4 байта (32-битово цяло число). От този тип са много параметри за драйвери на устройства и услуги. Те се показват в редактора на системния регистър (Registry Editor) в двоичен, шестнадесетичен или десетичен формат. Свързаните с тях стойности са DWORD_LITTLE_ENDIAN (най-маловажният бит е в най-ниския адрес) и REG_DWORD_BIG_ENDIAN (най-маловажният бит е в най-високия адрес).
Стойност на низ, която може да се увеличаваREG_EXPAND_SZНиз от данни с променлива дължина. Този вид данни включва променливи, които се разрешават, когато програма или услуга използва данните.
Многонизова стойностREG_MULTI_SZСъставен низ. Обикновено от този тип са стойности, които съдържат списъци или множество от стойности във форма, която хората могат да прочетат. Записите се разделят чрез шпации, запетаи или други маркиращи знаци.
Низова стойностREG_SZТекстов низ с фиксирана дължина.
Двоична стойностREG_RESOURCE_LISTСерия от вложени масиви, създадена да съхранява списък с ресурси, който се използва от драйвер на хардуерно устройство или от едно от контролираните от него физически устройства. Тези данни се разпознават и записват от системата в дървото \ResourceMap. Те се показват в редактора на системния регистър (Registry Editor) в шестнадесетичен формат като двоична стойност.
Двоична стойностREG_RESOURCE_REQUIREMENTS_LISTСерия от вложени масиви, създадена да съхранява списък с драйвери на възможни хардуерни ресурси, които могат да се използват от драйвера или от едно от контролираните от него физически устройства. Системата записва подмножество на този списък в дървото \ResourceMap. Тези данни се разпознават от системата и се показват в редактора на системния регистър (Registry Editor) в шестнадесетичен формат като двоична стойност.
Двоична стойностREG_FULL_RESOURCE_DESCRIPTORСерия от вложени масиви, създадена да съхранява списък с ресурси, който се използва от физическо хардуерно устройство. Тези данни се разпознават и записват от системата в дървото \HardwareDescription, и се показват в редактора на системния регистър (Registry Editor) в шестнадесетичен формат като двоична стойност.
НямаREG_NONEДата без определен тип. Тези данни се записват в системния регистър от системата или приложни програми и се показват в редактора на системния регистър (Registry Editor) в шестнадесетичен формат като двоична стойност.
ПрепраткаREG_LINKСимволична препратка във формат Unicode.
QWORD стойностREG_QWORDДанни, представяни във вид на 64-битово цяло число. Тези данни се показват в редактора на системния регистър (Registry Editor) като двоични стойности. За първи път са въведени в Windows 2000.
"Кошерът" на регистъра е група от ключове, подключове и стойности в системния регистър, която има набор от поддържащи файлове, съдържащи резервни копия на нейните данни. Поддържащите файлове за всички "кошери" освен HKEY_CURRENT_USER са в папката Systemroot\System32\Config в Windows NT 4.0, Windows 2000, Windows XP и Windows Server 2003, а поддържащите файлове за HKEY_CURRENT_USER са в папката Systemroot\Profiles\Username. Разширенията на имената на файловете в тези папки, а понякога и липсата на разширение, посочват вида на данните, съдържащи се в тях.
Сгъване на таблицатаРазгъване на таблицата
"Кошер" на архивПоддържащи файлове
HKEY_LOCAL_MACHINE\SAMSam, Sam.log, Sam.sav
HKEY_LOCAL_MACHINE\SecuritySecurity, Security.log, Security.sav
HKEY_LOCAL_MACHINE\SoftwareSoftware, Software.log, Software.sav
HKEY_LOCAL_MACHINE\SystemSystem, System.alt, System.log, System.sav
HKEY_CURRENT_CONFIGSystem, System.alt, System.log, System.sav, Ntuser.dat, Ntuser.dat.log
HKEY_USERS\DEFAULTDefault, Default.log, Default.sav
В Windows 98 файловете на системния регистър се наричат User.dat и System.dat. В Windows Millennium Edition тези файлове се наричат Classes.dat, User.dat и System.dat.

Забележка Функциите за защита в Windows NT, Windows 2000, Windows XP и Windows Server 2003 позволяват на администратора да контролира достъпа към ключовете на системния регистър.

БИБЛИОГРАФИЯ

За допълнителна информация посетете следния уеб сайт на Microsoft:
http://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/default.mspx?mfr=true (http://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/default.mspx?mfr=true)

http://www.microsoft.com/technet/archive/winntas/tips/winntmag/inreg.mspx (http://www.microsoft.com/technet/archive/winntas/tips/winntmag/inreg.mspx)

ВАЖИ ЗА
  • Microsoft Windows Server 2003, 64-Bit Datacenter Edition
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003, Web Edition
  • Microsoft Windows XP Professional x64 Edition
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional
  • Microsoft Windows XP Tablet PC Edition
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows 2000 Datacenter Server
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft Windows NT Server 4.0 Enterprise Edition
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • Microsoft Windows Millennium Edition
  • Microsoft Windows 98 Second Edition
  • Microsoft Windows 98 Standard Edition
  • Microsoft Windows 95
  • Microsoft Windows Small Business Server 2003 Premium Edition
  • Microsoft Windows Small Business Server 2003 Standard Edition
Ключови думи: 
kbenv kbfaq kbinfo kbregistry KB256986
 

Преводи на статии