Реестр, или системный реестр – это база данных для хранения сведений о конфигурации компьютера и настроек операционной системы.
Реестр содержит данные, к которым Windows XP постоянно обращается во время загрузки, работы и ее завершения, а именно:
- профили всех пользователей, то есть их настройки;
- конфигурация оборудования, установленного в операционной системе;
- данные об установленных программах и типах документов, создаваемых каждой программой;
- свойства папок и значков программ;
- данные об используемых портах.
Реестр имеет иерархическую древовидную структуру, состоящую из разделов, подразделов и ключей (параметров).
REG-файл - это текстовый файл с расширением REG, составленный в определенном формате.
Ниже приводится пример REG-файла, отключающего меню недавних документов.
Windows Registry Editor Version 5.00
;Отключить меню недавних документов
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]
"NoRecentDocsMenu"=hex:01,00,00,00
Синтаксис REG-файла
- Windows Registry Editor Version 5.00 - заголовок файла, являющийся его неотъемлемой частью. Также в качестве заголовка вы можете встретить REGEDIT4 - это формат Windows 98 / NT 4.0, который впрочем поймут и более новые операционные системы Windows. Подробнее о различиях в форматах можно прочитать на сайте JSO FAQ (на английском языке).
- ;Отключить меню недавних документов - комментарий. Все строки, начинающиеся с; (точка с запятой) представляют собой комментарии.
- [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer] - это раздел реестра. Графически (в редакторе реестра) он представляет собой путь к параметру. В формате REG-файлов разделы всегда заключаются в квадратные скобки. В этом примере (под)раздел Explorer принадлежит разделу HKEY_CURRENT_USER.
- "NoRecentDocsMenu"=hex:01,00,00,00 - параметр реестра и его значение. В зависимости от значения параметра, меняется поведение операционной системы или объекта. Многие параметры можно настроить в графическом интерфейсе операционной системы, но далеко не все. В таких случаях для изменения параметра используют редакторы реестра, твикеры или REG-файлы.
В REG-файле может содержаться несколько разделов и параметров реестра, но заголовок используется только в самом начале.
|
|
Пример:
Windows Registry Editor Version 5.00
;Отключить перезагрузку в случае BSOD
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl]
"AutoReboot"=dword:00000000
;Отключить уведомление на экране приветствия о непрочитанных сообщениях
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\UnreadMail]
"MessageExpiryDays"=dword:00000000
Данный REG-файл был получен путем экспорта из редактора реестра regedit.exe. При помощи REG-файлов можно вносить изменения в системный реестр - эта операция называется импортом параметров реестра.
|
|
Для импорта REG-файлов из командной строки существует команда REGEDIT. Набрав в командной строке
REGEDIT C:\hklm.reg
Вы получите точно такое же диалоговое окно, как при двойном щелчке мыши. Подавить появление диалогового окна можно запустив команду с параметром /S. Именно этот способ чаще всего применяется во время автоматической установки Windows.
REGEDIT /S C:\hklm.reg
При помощи команды REG ADD также можно импортировать параметры реестра. Она удобна тем, что команды для импорта параметров можно включить в состав пакетного файла, выполняющего также и другие задачи (т. е. нет необходимости в дополнительном REG-файле). Например, эта команда нередко применяется для импорта значений реестра в раздел RunOnceEx и последующей установки программ при первом входе в систему. Синтаксис команды достаточно прост.
REG ADD [/v | /ve] [/t ] [/s ]
[/d ] [/f]
[\\\]
Имя удаленного компьютера, если оно опущено, то по умолчанию
считается равным имени локального компьютера.
На удаленных компьютерах доступны только разделы HKLM и HKU.
Полный путь к разделу реестра в виде КОРЕНЬ\Подраздел.
Корневой радел. Значения [ HKLM | HKCU | HKCR | HKU | HKCC ].
Полный путь к разделу реестра в выбранном корневом разделе.
/v Имя добавляемого параметра в указанном разделе.
/ve Добавить пустой параметр (По умолчанию) в указанный раздел.
/t Типы данных.
[REG_SZ | REG_MULTI_SZ | REG_DWORD_BIG_ENDIAN |
REG_DWORD | REG_BINARY | REG_DWORD_LITTLE_ENDIAN |
REG_NONE | REG_EXPAND_SZ ]
По умолчанию, считается равным REG_SZ.
/s Определяет разделитель, который используется для разделения данных в
многострочных параметрах типа REG_MULTI_SZ. По умолчанию, считается
равным "\0".
/d Значение, присеваемое добавляемому параметру реестра.
/f Принудительно перезаписывать существующие записи реестра
без предупреждения.
Примеры:
REG ADD \\ABC\HKLM\Software\MyCo
Добавляет раздел HKLM\Software\MyCo на удаленный компьютер ABC
REG ADD HKLM\Software\MyCo /v Data /t REG_BINARY /d fe340ead
Добавляет параметр с именем: Data, типом: REG_BINARY, и значением: fe340ead
REG ADD HKLM\Software\MyCo /v MRU /t REG_MULTI_SZ /d fax\0mail
Добавляет параметр с именем: MRU, типом: REG_MUTLI_SZ,
и значением: fax\0mail\0\0
REG ADD HKLM\Software\MyCo /v Path /t REG_EXPAND_SZ /d %%systemroot%%
Добавляет параметр с именем: Path, типом: REG_EXPAND_SZ,
и значением: %systemroot%
Примечание: Используйте в строке двойные символы процента (%%)