Windows XP - Справочник
Главная > Установка Win XP > Введение в реестр > Структура reg-файла

Структура reg-файла

Знание реестра Windows XP будет неполным без умения написать reg-файл.

REG-файл — это файл, имеющий определенную структуру и содержащий информацию, которая импортируется в реестр.

Для чего нужно это знать и уметь? Например, если была заблокирована работа с редактором реестра, а это можно сделать с помощью изменения ключей реестра, то наиболее легким способом исправить установки в реестре будет создание и импортирование reg-файла.

Первая строка reg-файла для Windows XP обязательно должна быть такой:
Windows Registry Editor Version 5.00

однако REGEDIT от Windows XP понимает и такое:
REGEDIT4

сохраняя тем самым совместимость снизу вверх. Обратите внимание на регистр букв. Кроме этого, в первой строке ничего быть не должно. После текста обязательно должна быть пустая строка.

Затем указывается раздел реестра, в котором надо прописать или изменить какие-то параметры. Название раздела должно быть заключено в квадратные скобки. Затем ниже прописываются параметры и значения по одному параметру в строке. Когда вы закончили описание параметров и их значений, то оставьте пустую строку и либо закончите файл, либо, если нужно, начинайте описание для следующего раздела.

пример reg-файла:

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-файл, надо добавить такую строку:
@="какое-либо значение"
Regedit имеет некоторое множество опций командной строки, чтобы автоматизировать его использование в пакетных файлах. Ниже указаны некоторые из вариантов.

regedit.exe [options] [filename]
filename — импортируемый в реестр.reg файл
/s — подавлять запрос на подтверждение при импорте файла
/e — экспорт раздела реестра в файл.

Пример:
regedit /e file.reg HKEY_CURRENT_USER\ Software\ Microsoft

Наберите в командной строке:
REG /?
и изучайте "Программу редактирования системного реестра из командной строки, версия 3.0". Я думаю, она вам понравится.

Удаление разделов и ключей реестра при помощи .reg-файла

Вы можете удалять разделы реестра и значения в разделах, не используя REGEDIT. Для удаления раздела используйте тот же самый формат reg-файла, только перед наименованием раздела поставьте знак "минус" ("-"). Например:
REGEDIT5
[-HKEY_LOCAL_MACHINE\ SYSTEM\ Test]
Этот же формат используйте для удаления отдельных параметров в выбранных разделах, поставив знак "минус" ("-") после знака "равно" ("="):
REGEDIT5
[HKEY_LOCAL_MACHINE\ SYSTEM\ Test]
"TestValue" =-
Помните, что прежде, чем проводить какие-либо манипуляции с реестром вручную, рекомендуется сделать резервную копию.