Импорт параметров реестра можно осуществить несколькими способами.
Запуск REG-файла
Это самый простой способ. Она заключается в запуске REG-файла, содержащего необходимые параметры, двойным щелчком мыши или из командной строки.
Примечание. Дополнительную информацию смотрите в статье
REG-файл
Двойной щелчок мыши
Как это ни тривиально звучит, но двойным щелчком мыши на REG-файле можно внести изменения в реестр. Правда, сначала система уточнит, действительно ли вы хотите это сделать. В случае положительного ответа изменения будут внесены.
Рисунок 1. Система запрашивает подтверждение на внесение изменений.
Командная строка
Для импорта REG-файлов из командной строки существует команда REGEDIT. Набрав в командной строке
REGEDIT C:\hklm.reg
Вы получите точно такое же диалоговое окно, как при двойном щелчке мыши. Подавить появление диалогового окна можно запустив команду с параметром /S
REGEDIT /S C:\hklm.reg
Команда REG ADD
При помощи команды 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%
Примечание: Используйте в строке двойные символы процента ( %% )
INF-файл
Импортировать параметры в реестр можно и при помощи INF-файлов. Их общий синтаксис несколько сложнее, чем у REG-файлов, но непосредственно запись в реестр осуществляется достаточно просто. Ниже приводится пример из аддона Msgina
[Version]
Signature="$Windows NT$"
[Optional Components]
Msgina
[Msgina]
OptionDesc="Msgina"
Tip="Библиотека GINA входа в систему"
Modes=0,1,2,3
AddReg=Msgina.AddReg
[Msgina.AddReg]
HKLM,"Software\Policies\Microsoft\Windows\System\Shutdown","ShowHibernateButton",0x10001,1
HKLM,"Software\Policies\Microsoft\Windows\System\Shutdown","HibernateAsButton",0x10001,1
Примечание. Дополнительную информацию об INF-файлах можно найти в
подробном руководстве.