Реестр Windows 7
Шрифт:
ПРИМЕЧАНИЕ
Я обратил внимание, что при создании REG-файла при помощи редактора реестра в конец файла вставляются две пустые строки. Я не нашел информации на данный счет в документации, но на всякий случай также добавляю две пустые строки при ручном создании файла. Для экономии бумаги в книге эти строки не отображаются.
Создание REG-файла
Писать REG-файл можно в любом текстовом редакторе, например в Блокноте. Создайте новый текстовый документ, наберите приведенный выше код (рис. 1.19) и сохраните файл с расширением REG.
Если вы хотите потренироваться в создании подобных файлов, то проще сгенерировать их при помощи экспорта из редактора реестра, а затем внести изменения в Блокноте.
Внесение изменений в реестр при помощи REG-файла Выше мы уже рассматривали поведение системы при выполнении двойного щелчка по файлу с расширением .REG. При двойном щелчке на REG-файле у вас запускается редактор реестра, которому передается в качестве параметра имя файла.
ВНИМАНИЕ
Перед импортом в реестр REG-файла обязательно сделайте резервную копию реестра или точку восстановления системы!
Данный способ не очень удобен для автоматизации задач. Например, мы хотим создать сценарий автоматической установки системы с использованием REG-файлов. Если таких файлов будет слишком много, то пользователю постоянно придется нажимать кнопку OK , что, согласитесь, не доставит ему удовольствия. Можно подавить появ ление диалогового окна, запустив команду с параметром /S:
REGEDIT /S D:\test.reg
Именно этот способ используется программистами и системными администраторами при создании своих программ и сценариев, использующих REG-файлы. Правда, служба контроля учетных записей Windows выведет запрос о разрешении операции, но службу контроля можно отключить на время подобных действий, и тогда пользователь ничего не увидит.
C помощью REG-файла также можно удалять разделы. Для этого необходимо поставить знак минуса перед названием раздела. Откроем в Блокноте наш файл cat.reg и внесем следующие изменения:
Windows Registry Editor Version 5.00ставим минус для удаления раздела
[-HKEY_CURRENT_USER\Software\Test]
Теперь нужно дважды щелкнуть на REG-файле, чтобы запустить его и импортировать записи в реестр. Проверьте в редакторе реестра, что заданный раздел был удален.
ВНИМАНИЕ
Обратите внимание, что удалять можно только те разделы, которые не содержат в себе подразделов. В противном случае необходимо последовательно удалить все входящие в его состав подразделы и только потом приступать к удалению нужного раздела.
Также можно удалить параметр. Для этого следует поставить знак минуса (–) после знака равенства (=):
Windows-Registry-Editor-Version-5.00Удаляем параметр из раздела Test
[HKEY_CURRENT_USER\Software\Test]
«CatName»="Рыжик"
«CatAge»=-
Снова проверьте, что такие изменения работают и параметр CatAge был удален.
Утилита командной строки REG.EXE
Кроме редактора реестра, имеющего графический интерфейс, в составе Windows 7 имеется также утилита командной строки REG.EXE, предназначенная для опытных пользователей. С ее помощью можно создавать различные сценарии для выполнения различных задач, связанных с экспортом и импортом разделов реестра.
Экспорт параметров (команда EXPORT)
Для экспорта параметров реестра с помощью командной строки используется команда REG EXPORT , обладающая следующим синтаксисом:
REG EXPORT <имя_раздела> <имя_файла> [/y]
Параметры
► <имя_раздела> – полный путь к разделу реестра в виде: КОРЕНЬ\Подраздел (только для локального компьютера). В качестве корня используются значения HKLM-|-HKCU-|-HKCR-|-HKU-|-HKCC . В качестве подраздела используется полный путь к разделу реестра в выбранном корневом разделе.
► <имя_файла> – имя файла на
диске, в котором будут записаны экспортированные записи.► /y – необязательный параметр. С его помощью можно выводить окно с предупреждением о том, что на диске уже существует файл с таким же именем.
Практическое занятие
Попробуем экспортировать раздел Test , созданный на предыдущих занятиях, при помощи командной строки. Запустите интерпретатор командной строки (cmd.exe). Введите в командной строке следующую строчку (предполагается, что у вас еще нет файла cat.reg на диске D: ):
reg export HKCU\Software\Test-d:\cat.reg
В успешном случае на экране появится строчка Операция успешно завершена (рис.1.20). Откройте диск и убедитесь, что данный файл существует (естественно, вы можете самостоятельно выбрать диск и имя файла для данного примера).
Добавление параметров (команда ADD)
При помощи команды REG ADD можно добавить параметры в реестр. Таким образом, можно включить команды для добавления параметров в состав сценария, не прибегая к помощи REG-файлов. Синтаксис команды достаточно прост:
REG ADD <имя_раздела> [/v <имя_параметра> | /ve] [/t <тип>] [/s <разделитель>] [/d <данные>] [/f]
Параметры
► имя_раздела-[\\<компьютер>\]<раздел>.
<компьютер> – имя удаленного компьютера. Если оно опущено, то по умолчанию используется локальный компьютер. На удаленном компьютере доступны только корневые разделы HKLM и HKU .
<раздел> – КОРЕНЬ\<подраздел> . В качестве корня используется одно из значений: HKLM | HKCU | HKCR | HKU | HKCC . В качестве подраздела используется полное имя подраздела реестра в указанном корневом разделе.
► /v – имя параметра, добавляемого в выбранный раздел.
► /ve – добавление параметра с пустым именем (по умолчанию) в этот раздел.
► /t – тип данных. Может использоваться одно из следующих значений: REG_SZ | REG_MULTI_SZ | REG_EXPAND_SZ | REG_DWORD | REG_QWORD | REG_BINARY | REG_NONE . Если не указывается, то по умолчанию используется REG_SZ .
► /s – символ, используемый в качестве разделителя данных для параметров типа REG_MULTI_SZ . Если не указан, то в качестве разделителя используется \0 .
► /d – значение, присваиваемое добавляемому параметру реестра.
► /f – выполнение замены существующих записей без запроса подтверждения.
Для добавления нового раздела HKCU\Software\Test на удаленном компьютере BOSS введите в командной строке следующее:
REG ADD \\BOSS\HKCU\Software\Test
У утилиты командной строки REG.EXE есть множество других ключей для работы с реестром: QUERY, DELETE, COPY, SAVE, RESTORE, LOAD, UNLOAD, COMPARE, IMPORT . Узнать о них вы можете из справочной документации.Практическое занятие
Если вы не помните ту или иную операцию у утилиты REG.EXE , то воспользуйтесь ключом /? . Запустите командную строку CMD.EXE и введите сначала команду
reg /?
Вы увидите список всех доступных операций, а также подсказки, как получить дополнительную информацию о каждой операции (рис. 1.21).