Запись в реестр Windows заданной информации

Реестр, или системный реестр – это база данных для хранения сведений о конфигурации компьютера и настроек операционной системы.

Реестр содержит данные, к которым 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%

Примечание: Используйте в строке двойные символы процента (%%)






Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: