Добавление и редактирование reg-файл
REG-файл ≈ это файл c расширением *.reg, имеющий определенную структуру и содержащий информацию, которая импортируется в реестр. Создать такой файл можно в любом текстовом редакторе, например в Блокноте и обязательно нужно присвоить расширение- reg. Перенос информации из такого файла в реестр производится простым запуском этого файла, например в Проводнике нужно 2 раза нажать мышкой на файл.
Для чего нужно это знать и уметь? Например, если была заблокирована работа с редактором реестра, а это можно сделать с помощью изменения ключей реестра, то наиболее легким способом исправить установки в реестре будет создание и импортирование reg-файла.
Первая строка reg-файла для Windows обязательно должна быть такой:
REGEDIT4
Windows XP понимает и такое:
Windows Registry Editor Version 5.00
Обратите внимание на регистр букв. Кроме этого, в первой строке ничего быть не должно. Вторая строка обязательно должна быть пустой .
Затем указывается раздел реестра, в котором надо прописать или изменить какие-то параметры. Название раздела должно быть заключено в квадратные скобки. Затем ниже прописываются параметры и значения по одному параметру в строке. Когда вы закончили описание параметров и их значений, то обязательно оставьте пустую последнюю строку .
Вот пример reg-файла:
REGEDIT4 [HKEY_LOCAL_MACHINE\SYSTEM\Setup] "SetupType"=dword:0
Или для Windows XP:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\Setup] "SetupType"=dword:0 "SystemSetupInProgress"=dword:0 "CmdLine"="" "SystemPrefix"=hex:cc,1b,00,00,00,40,3d,68 "SystemPartition"="\ \Device\ \HarddiskVo-lume1" "OsLoaderPath"="\ \ " "uniqueid"="C:\ \WINDOWS\ \ LPM" [HKEY_LOCAL_MACHINE\SYSTEM\Setup\AllowStart] {...описание параметров...}
Как видим, строковые параметры заключаются в кавычки. Перед числами ставятся указатели на их тип. Например, dword ≈ указывает на тип этого параметра, буквы должны быть обязательно маленькие. После двоеточия следует значение из восьми цифр в шестнадцатеричном формате. Однако большинство параметров dword имеют значение либо 0, либо 1. Пробелы в строке не допускаются. В реестре существуют параметры "По умолчанию" (Default). Чтобы присвоить им какое-то значение через REG-файл, надо добавить такую строку:@="какое-либо значение" Вы можете удалять разделы реестра и значения в разделах. Для удаления раздела используйте тот же самый формат reg-файла, только перед наименованием раздела поставьте знак "минус" ("-").
Например:
REGEDIT4 [-HKEY_LOCAL_MACHINE\SYSTEM\Setup] "SetupType"=dword:0
Этот же формат используйте для удаления отдельных параметров в выбранных разделах, поставив знак "минус" ("-") после знака "равно" ("="):
REGEDIT4 [HKEY_LOCAL_MACHINE\SYSTEM\Setup] "SetupType"=-dword:0
Этот совет поможет вам импортировать данные из reg-файла в реестр БЕЗ вывода подтверждений на это. Делается это с помощью командной строки (или из bat-файла). Она должна быть следующего типа:
regedit /s <registry file>.reg
Добавление с помощью inf-файла
Формат файлов следующий:
[Version]
Signature = "$Windows NT$"
Provider=%Provider%
[Strings]
Provider="WinFAQ Ltd"
[DefaultInstall]
AddReg = AddReg
DelReg = DelReg
UpdateInis = UpdateInis
[AddReg]
[DelReg]
[UpdateInis]
Используемые ключи:
HKCR | HKEY_CLASSES_ROOT |
HKCU | HKEY_CURRENT_USER |
HKLM | HKEY_LOCAL_MACHINE |
HKU | HKEY_USERS |
Пример *.inf файла.
[Version]
Signature = "$Windows NT$"
[DefaultInstall]
AddReg = AddReg
[AddReg]
HKU,".DEFAULT\Control Panel\Colors","Background",0000000000,"0 0 0"
HKU,".DEFAULT\Control Panel\Desktop","Wallpaper",0000000000,"E:\WINNT\winfaq.bmp"
HKU,".DEFAULT\Control Panel\Desktop","TileWallpaper",0000000000,"1"
тоже самое с reg-фалом
Пример:
REGEDIT4
[HKEY_USERS\.DEFAULT\Control Panel\Desktop]
"Wallpaper"="E:\\WINNT\\winfaq.bmp"
"TileWallpaper"="0"
[HKEY_USERS\.DEFAULT\Control Panel\Colors]
"Background"="0 0 0"
Установит обои "по умолчанию" и цвет фона до входа в систему.
Добавление записи в реестр из ms-dos
Для этого надо загрузить DOS и набрать в командной строке "REGEDIT /C ИМЯ_ФАЙЛА.REG".
Например, что бы добавить данные из файла reestr.reg, то набираем в командной строке
REGEDIT /C REESTR.REG
Удаление значений/ключей реестра из командной строки.
Используя утилиту REG.EXE из Windows NT Resource Kit Supplement 2 Вы можете удалить параметр реестра и из командной строки или командного файла.
Пример:
reg delete HKLM\Software\test
Удалится параметр HKEY_LOCAL_MACHINE\Software\test . После ввода команды выводится запрос на подтверждение удаления, вводим Y. Чтобы избежать вывода запроса на подтверждение, добавьте параметр /f , например:
reg delete HKLM\Software\test /f
Полный список кодов разделов реестра, используемых с REG DELETE:
HKCR | HKEY_CLASSES_ROOT |
HKCU | HKEY_CURRENT_USER |
HKLM | HKEY_LOCAL_MACHINE |
HKU | HKEY_USERS |
HKCC | HKEY_CURRENT_CONFIG |
Для удаления значений в реестре на удаленной машине добавьте имя машины: \\< имя машины >, например:
reg delete HKLM\Software\test \\andrey