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

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

В данной статье описывается добавление, изменение или удаление подразделов и значений реестра с помощью файла реестра (.reg). Regedit.exe использует REG-файлы для импорта и экспорта подразделов и значений реестра. Эти REG-файлы можно использовать для удаленного распространения изменений реестра на нескольких компьютерах под управлением Windows. При выполнении REG-файл, содержимое файла будет внесено в локальном реестре. Таким образом необходимо распределить REG-файлы с осторожностью.

Синтаксис REG-файлов

REG-файл имеет следующий синтаксис:

RegistryEditorVersion
Пустая строка
[RegistryPath1]
"DataItemName1"="DataType1:DataValue1"
"DataItemName2"="DataType2:DataValue2"
Пустая строка
[RegistryPath2]
"DataItemName3"="DataType3:DataValue3"

где:

RegistryEditorVersion — "Windows Registry Editor Version 5.00", для Windows 2000, Windows XP и Windows Server 2003 или "REGEDIT4" для Windows 98 и Windows NT 4.0. Заголовок "REGEDIT4" также работает на компьютерах под управлением Windows 2000, работающем под управлением Windows XP и под управлением Windows Server 2003.

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

RegistryPathX — путь подраздела, который включает первое импортируемое значение. Заключите путь в квадратные скобки и отделите каждый уровень иерархии, обратную косую черту. Например:
[
HKEY_LOCAL_ MACHINE\SOFTWARE\Policies\Microsoft\Windows\System
]

REG-файл может содержать несколько путей реестра. Если в нижней части иерархии в инструкции пути в реестре не существует, будет создан новый подраздел. Содержимое файлов реестра отправляется в реестр в порядке их ввода. Таким образом Если вы хотите создать новый подраздел с подразделом, необходимо ввести строки в правильном порядке.

DataItemNameX — это имя элемента данных, который требуется импортировать. Если элемент данных в файле отсутствует в реестре, REG-файл добавляет его (со значением элемента данных). Если элемент данных существует, значение в REG-файле переписывает существующее значение. Кавычки, необходимо заключить имя элемента данных. Знак равенства (=) сразу после имени элемента данных.

DataTypeX — тип данных для значения реестра и следует сразу же после знака равенства. Для всех типов данных, кроме REG_SZ (строковое значение) двоеточие следует непосредственно за типом данных. Если тип данных — REG_SZ, не включайте значение типа данных или двоеточие. В этом случае Regedit.exe предполагает тип данных REG_SZ. В следующей таблице перечислены основные типы данных реестра:

Тип данных Тип данных в REG-файле
REG_BINARY шестнадцатеричный
REG_DWORD dword
REG_EXPAND_SZ Hexadecimal(2)
REG_MULTI_SZ Hexadecimal(7)

DataValueX следует сразу же за двоеточием (или знаком равенства в REG_SZ) и должно быть в соответствующем формате (например, строковый или шестнадцатеричный). Используйте шестнадцатеричный формат для двоичных элементов данных.

Примечание. Можно ввести несколько строк элементов данных для одного пути реестра.

Примечание. Файл реестра должен содержать пустую строку в конец файла.

Добавление подразделов реестра или добавление и изменение значений реестра

Чтобы добавить подраздел реестра или добавить или изменить значение реестра, внесите соответствующие изменения в реестр и затем экспортировать соответствующий подраздел или подразделы. Экспортированные подразделы реестра автоматически сохраняются как REG-файлы. Чтобы внести изменения в реестр и экспортировать изменения в REG-файл, выполните следующие действия:

    Нажмите кнопку Пуск, выберите пункт выполнить, в поле Открыть введите команду regedit и нажмите кнопку ОК.
    Найдите и выберите подраздел, содержащий элемент реестра или элементы, которые требуется изменить.
    Выберите Файл и нажмите кнопку Экспорт.

    На этом шаге резервная копия подраздела до внесения изменений. Можно импортировать этот файл обратно в реестр позже Если причиной изменения.
    В поле Имя файла введите имя файла для сохранения REG-файла с исходными элементами реестра и нажмите кнопку Сохранить.

    Примечание Укажите имя, напоминающее о содержимом, например ссылку на имя подраздела.
    В правой области добавьте или измените нужные элементы реестра.
    Повторите шаги 3 и 4, чтобы экспортировать подраздел еще раз, но используйте другое имя REG-файла. Этот REG-файл можно использовать для изменения реестра на другом компьютере.
    Протестируйте изменения на локальном компьютере. Если они вызывают проблему, дважды щелкните файл, содержащий резервную копию исходных данных реестра, чтобы вернуть реестр в исходное состояние. Если изменения работает должным образом, можно распространять REG-файл, созданный на шаге 6 на другие компьютеры с помощью методов в разделе «Распространение изменений реестра» данной статьи.

Удаление разделов реестра и значений

Чтобы удалить раздел реестра с помощью REG-файла, поместите дефис (-) перед Путем_реестра REG-файла. Например, чтобы удалить подраздел Test из следующего раздела реестра:
HKEY_LOCAL_MACHINE\Software

REG-файла, добавьте дефис перед следующий раздел реестра:
HKEY_LOCAL_MACHINE\Software\Test

В следующем примере имеется REG-файл, который может выполнить эту задачу.
[
-HKEY_LOCAL_MACHINE\Software\Test
]

Чтобы удалить значение реестра с помощью REG-файла, поместите дефис (-) после знака равенства, Именем_элемента_данных REG-файла. Например, чтобы удалить параметр реестра «TestValue» из следующего раздела реестра:
HKEY_LOCAL_MACHINE\Software\Test

добавьте дефис после "TestValue"= в REG-файл. В следующем примере имеется REG-файл, который может выполнить эту задачу.
HKEY_LOCAL_MACHINE\Software\Test

"TestValue"=-

Чтобы создать REG-файл, используйте Regedit.exe, чтобы экспортировать раздел реестра, который требуется удалить и затем измените файл с помощью блокнота, добавив дефис.

Переименование разделов и значений реестра

Чтобы переименовать раздел или параметр, удалите раздел или параметр, а затем создайте новый раздел или значение с новым именем.
Распространение изменений реестра
REG-файл можно отправить пользователям по электронной почте, поместить его на сетевой диск и направить пользователей к сетевой папке, чтобы выполнить его, или можно добавить команду к скриптам входа пользователей, чтобы автоматически импортировать REG-файл при входе в систему. Когда пользователи запускают REG-файл, они получают следующие сообщения:
Редактор реестра
Вы уверены, что хотите добавить информацию из пути REG-файла в реестр?
При нажатии кнопки Да, пользователь получает следующее сообщение:
Редактор реестра
Данные из пути REG-файла были успешно внесены в реестр.

Regedit.exe поддерживает параметр командной строки /s , чтобы не отображать эти сообщения. Например чтобы автоматически выполнить REG-файл (с параметром /s ) из пакетного файла сценария входа в систему, используйте следующий синтаксис:
Regedit.exe /s пути REG-файла
Также можно использовать групповую политику или системную политику для распространения изменений реестра по сети.

Отредактировано counter (2014-09-21 08:55:19)