REG. EXE – Программа редактирования системного реестра из командной строки Windows
Требуются права администратора: нет (asInvoker)
Виртуализация UAC: отключена
Утилита REG служит для редактирования реестра, работающая из командной строки cmd.exe, поддерживает все возможности, которые имеет программа regedit.exe. А кроме того, она также поддерживает несколько уникальных функций. Полезна в том случае когда работа с regedit по каким либо причинам не возможна.
Для работы с программой или отдельными ее возможностями требуются следующие привилегии:
- SeRestorePrivilege
- SeBackupPrivilege
Основной синтаксис программы следующий:
reg.exe команда \компьютерветвь реестра параметры.
Если же вы изменяете реестр локального компьютера, то название компьютера указывать необязательно.
Ветвь реестра. Перед тем как начать описание возможностей данной программы, следует обратить внимание на то, как именно указывается в команде ветвь реестра.
При указании ветви реестра вместо названия корневого раздела нужно указывать его обозначение, принятое в программе:
- вместо HKEY_CLASSES_ROOT указывается HKCR;
- вместо HKEY_LOCAL_MACHINE указывается HKLM;
- вместо HKEY_CURRENT_CONFIG указывается HKCC.
Параметры. Список возможных параметров программы зависит от конкретной команды. Тем не менее, многие параметры используются одинаково в большинстве команд, где есть смысл их применять.
- /v параметр — если вам нужно выполнить добавление, удаление или другую операцию с конкретным параметром реестра, то нужно воспользоваться данным параметром.
- /ve — при необходимости добавления, удаления или другой операции с параметром (По умолчанию) ветви реестра нужно указать параметр /ve.
- /d значение — если вам нужно добавить значение параметра, указать это значение можно при помощи данного параметра.
- /f — этот параметр можно использовать со всеми командами. Если он установлена, то весь вывод программы на экран будет подавляться.
Чтобы добавить или изменить параметр реестра, нужно воспользоваться командой вида:
reg.exe add ветвь_реестра /v параметр /t тип /d значение
Для добавления или изменения параметра (По умолчанию) нужно воспользоваться командой вида:
reg.exe add ветвь_реестра /ve /d значение
Чтобы добавить ветвь реестра, достаточно воспользоваться командой вида reg.exe add ветвь_реестра.
Удаление параметров реестра с помощью утилиты REG
Чтобы удалить параметр реестра, нужно воспользоваться командой
reg delete ветвь_реестра /v параметр
Для удаления параметра (По умолчанию) нужно воспользоваться командой
reg delete ветвь_реестра /ve
Чтобы удалить все параметры ветви реестра, нужно воспользоваться командой
reg delete ветвь_реестра /va
Для удаления ветви реестра достаточно воспользоваться командой
Просмотр значения параметра реестра с помощью утилиты REG
Также с помощью данной программы можно просмотреть содержимое параметра или ветви реестра. Для этого достаточно воспользоваться командой reg query ветвь_реестра, если нужно просмотреть значения всех параметров реестра, либо добавить к данной команде параметры /v параметр или /ve для просмотра значения определенного параметра.
При указании данной команды для просмотра содержимого ветви реестра можно воспользоваться параметром /s. Если он присутствует в команде, то перед вами отобразятся значения всех параметров соответствующей ветви реестра и ее дочерних подразделов.
Поиск в реестре с помощью утилиты REG
Несмотря на то, что эта возможность выделена в качестве отдельного раздела книги, для ее реализации используется уже знакомая нам команда — reg query ветвь_реестра. Чтобы выполнить поиск с ее помощью, нужно воспользоваться следующими параметрами.
- /f шаблон_поиска — определяет строку, которую нужно найти. По умолчанию используется шаблон *.
- /d — присутствие данного параметра говорит о том, что поиск нужно вести только в значениях параметров.
- /k — наличие этого параметра говорит о том, что поиск нужно вести только в названиях разделов реестра.
- /c — присутствие данного параметра говорит о том, что поиск нужно вести с соблюдением регистра.
Сравнивание значений параметров реестра с помощью утилиты REG
Данная возможность является уникальной для программы reg.exe (в программе regedit.exe такой возможности нет).
Чтобы сравнить значения двух параметров, нужно воспользоваться командой
reg compare ветвь_реестра_1 ветвь_реестра_2 /v параметр
Для сравнения значений двух параметров (По умолчанию) нужно воспользоваться командой
reg compare ветвь_реестра_1 ветвь_реестра_2 /ve
Чтобы сравнить значения всех параметров в ветви реестра, нужно воспользоваться командой
Для сравнения значений всех параметров в ветви реестра и дочерних подразделах данной ветви нужно воспользоваться командой
reg compare ветвь_реестра_1 ветвь_реестра_2 /s
По умолчанию после работы программы отображаются сведения о различиях в сравниваемых ветвях реестра. Это поведение можно изменить, указав один из следующих дополнительных параметров:
- /oa — выводить как различия, так и совпадения;
- /od — выводить только различия;
- /os — только совпадения;
- /on — выводить только слово Different (если сравниваемые ветви различны) или Identical (если сравниваемые ветви идентичны).
Данная возможность является уникальной для программы reg.exe. С ее помощью вы сможете скопировать содержимое одной ветви реестра в другую.
Чтобы скопировать содержимое ветви реестра и ее дочерних подразделов, достаточно воспользоваться командой
reg copy ветвь_реестра_1 ветвь_реестра_2 /s
Экспорт и импорт реестра с помощью утилиты REG
Еще одной возможностью программы является экспорт ветви реестра в REG-файл и импортирование REG-файла обратно в реестр.
Чтобы выполнить экспорт ветви реестра, достаточно воспользоваться командой
reg export ветвь_реестра путь_к_файлу
Для импорта REG-файла достаточно воспользоваться командой
reg export путь_к_файлу
Работа с файлами кустов реестра с помощью утилиты REG
Кроме того, с помощью программы reg.exe можно выполнять экспорт и импорт реестра в файлы кустов. Для этого достаточно воспользоваться командами:
reg save ветвь_реестра путь_к_файлу и reg restore ветвь_реестра путь_к_файлу
Особенностью пользовательских (впрочем, как и обычных) файлов кустов является то, что их можно загружать в реестр, чтобы было проще выполнять операции над ними.
Чтобы загрузить файл куста, нужно воспользоваться командой
reg load ветвь,_в_которую_будет_загружен_куст путь_к_файлу_куста
Чтобы выгрузить файл куста, нужно воспользоваться командой
reg load ветвь_реестра,_в_которую_загружен_куст
Изменение флагов ветви реестра с помощью утилиты REG
Данная возможность является уникальной для программы reg.exe. С ее помощью можно изменить или просмотреть состояние дополнительных флагов определенной ветви реестра. Заметьте, что флаги поддерживают только дочерние подразделы ветви реестра HKLMSOFTWARE.
Программа reg.exe позволяет просмотреть значения следующих флагов: DONT_VIRTUALIZE, DONT_SILENT_FAIL, RECURSE_FLAG. Например, флаг DONT_VIRTUALIZE позволяет запретить виртуализацию соответствующей ветви реестра (об этом далее).
Чтобы просмотреть состояние всех флагов, достаточно воспользоваться командой
reg flags ветвь_реестра query
Для установления определенных флагов нужно воспользоваться командой
reg flags ветвь_реестра set флаги_через_пробел
При этом если вы не укажете флаг, он будет снят.
Чтобы снять все флаги, нужно воспользоваться командой
Виртуализация каталогов реестра с помощью утилиты REG
Операционная система Windows 7 с включенным механизмом UAC поддерживает новую возможность, называемую виртуализацией каталогов и разделов реестра. Она позволяет решить проблему установки приложений учетными записями пользователей, которые не имеют административных прав (точнее, не имеют прав на модификацию определенных ветвей реестра и каталогов).
Виртуализация реестра. Если механизм виртуализации включен, то при попытке какой-либо программы модифицировать раздел реестра, находящийся в ветви HKLMSOFTWARE, доступ к которой запрещен текущему пользователю, операционная система перенаправляет запрос программы в ветвь реестра HKCUSoftwareClassesVirtualStoreMACHINE и выполняет модификацию в ней.
Например, если программа пытается записать данные в ветвь HKLMSOFTWAREprogram_folder, операционная система перенаправляет ее в ветвь HKCUSoftwareClassesVirtualStoreMACHINESoftwareprogram_folder.
При последующих запусках программы она будет работать с данными, хранящимися не в ветви реестра, доступ к которой пользователю запрещен, а в ветви реестра HKCUSoftwareClassesVirtualStoreMACHINE.
Виртуализация каталогов действует для следующих папок операционной системы: %ProgramFiles%, %Windir%; %Windir%system32.
Отключение механизма виртуализации. Если вы обладаете административными правами, то можете запретить механизм виртуализации каталогов и ветвей реестра, реализованный в операционной системе Windows 7. После этого действия попытка записи программы в запрещенную для записи ветвь реестра или каталог будет вызывать ошибку и прекращение работы программы.
Примеры работы с утилитой REG
Рассмотрим ряд примеров использования данной программы.
- reg.exe add “HKCUSoftwareMicrosoftWindowsCurrentVersionExplorer” /v “link” /t REG_BINARY /d 00000000 — создает параметр REG_BINARY-типа link и присваивает ему значение 0. Команда создает его в ветви HKCUSoftwareMicrosoftWindowsCurrentVersionExplorer. После этого при создании ярлыка на файл или папку к названию ярлыка больше не будет добавляться строка Ярлык для.
- reg delete “HKLMSoftwareMicrosoftCommand Processor” /v autorun /f — удаляет параметр Autorun из ветви реестра, содержащей настройки программы cmd.exe. Если в данной ветви реестра присутствует параметр autorun, то программы, записанные в этом параметре, будут автоматически запускаться при запуске командного процессора cmd.exe. Для примера создайте данный параметр и присвойте ему значение cmd.exe. Вы увидите пример рекурсии в действии.
- reg query “HKLMSYSTEMCurrentControlSetControlFileSystem” — отображает на экране список хранящихся в реестре параметров, настраивающих работу файловой системы NTFS.
- reg compare “\niHKLMSOFTWAREPolicies” “HKLMSOFTWAREPolicies” /s — сравнивает содержимое ветви реестра, содержащей параметры групповых политик (и дочерних подразделов данной ветви реестра), компьютера NI с параметрами ветви локального компьютера.
При настройке системы Windows могут возникать такие ситуации, когда тот или иной параметр невозможно изменить через пользовательский интерфейс.
Зачастую, выход кроется в редактировании системного реестра Windows, с помощью которого можно воздействовать на огромное количество настроек операционной системы.
Ниже мы рассмотрим, что такое реестр и как вносить в него изменения. Для удобства разобьём статью на небольшие разделы
Определений термина реестр Windows можно дать множество, приведём относительно простое и доступное для понимания:
Системный реестр Windows – это база данных настроек и параметров операционной системы, имеющая древовидную структуру
То есть, огромное количество пользовательских и системных настроек ОС отражаются в этой виртуальной среде.
Виртуальным реестр можно считать потому, что он лишь упорядочивает и структурирует данные, которые физически хранятся в системных файлах на информационном носителе компьютера или формируются непосредственно в момент запуска Windows
Рассмотрим два основных способа запуска стандартной утилиты редактора реестра:
Запуск редактора реестра при помощи команды Выполнить
Запуск редактора реестра из проводника
Перед нами откроется окно редактора реестра.
Структура реестра Windows
Отображение информации в реестре имеет определённую структуру.
В правой части окна мы видим и , каждая из которых ещё называется , в левой же расположены и их .
В каждом разделе реестра отображается заданная ему информация. В современных версиях ОС от компании Microsoft заложены пять разделов:
- HKEY_CLASSES_ROOT (HKCR) – содержит параметры определения типов файлов и объектов
- HKEY_LOCAL_MACHINE (HKLM) – общие настройки компьютера, относящиеся ко всем пользователям
- HKEY_CURRENT_CONFIG (HKCC) – отображает параметры оборудования и подключенных устройств компьютера
В ранних версиях ОС Windows присутствовал ещё один раздел:
Типы данных реестра
в Windows могут быть различных типов, не станем углубляться в особенности каждого из них, рядовому пользователю это знать не обязательно, просто приведём их ниже:
– Строковый параметр
– Двоичный параметр
– Параметр DWORD (32 бита)
– Параметр QWORD (64 бита)
– Мультистроковый параметр
– Расширяемый строковый параметр
Изменить тип данных созданного ключа стандартными средствами нельзя, если ошиблись при создании, надо удалить некорректную запись и внести новый ключ.
Резервное копирование реестра
! Перед редактированием реестра всегда желательно создавать резервную копию изменяемой ветки или раздела
Ввод некорректных параметров в системный реестр Windows может привести к нестабильной работе и краху системы
Создание бэкапа реестра
Для создания бэкапа раздела реестра мы воспользуемся функцией экспорта в стандартной утилите regedit.
- Правой кнопкой мыши жмём на нужный раздел и выбираем пункт
- В появившемся окне выбираем каталог для сохранения файла бэкапа, вносим имя файла и нажимаем кнопку .
Восстановление реестра из бэкапа
Если по каким-то причинам возникнет необходимость восстановления данных реестра из резервной копии, то нам нужно будет только запустить файл бэкапа с расширением *.reg и согласиться на внесение изменений в реестр.
Удаление записей из системного реестра Windows
В первую очередь отметим, что некоторые ключи имеют дефолтные значения. Это значит, что даже если конкретный ключ отсутствует в своей ветке, система будет вести себя, будто ему присвоен параметр по умолчанию.
Отсюда можно сделать вывод, что процесс редактирования реестра делится на несколько типов:
- параметров существующих ключей;
- ключей в реестр с присвоением им нужного значения;
- из реестра лишних ключей или даже кустов.
Сразу пройдёмся по последнему пункту, касаемо удаления записей из реестра.
Чаще всего это бывает нужно после удаления софта для чистки хвостов. Дело в том, что некоторые программы, работающие в Windows среде, при установке и в процессе работы активно взаимодействуют с реестром системы, добавляя туда записи с технической информацией. Но при деинсталляции затираются в реестре далеко не все строки. Частично эту проблему решают программы uninstaller-ы от сторонних разработчиков, но встречаются и случаи, требующие ручного вмешательства.
После всего вышесказанного у кого-то может возникнуть резонный вопрос: зачем вообще чистить реестр от ненужных записей?
Ответ прост: во-первых, иногда оставшиеся записи в реестре после удаления программы мешают повторной установке того же софта; во-вторых, записи реестра хранятся в файлах большого объёма, увеличение которого негативно сказывается на фрагментации жесткого диска и отзывчивости системы.
Ещё одной причиной для чистки реестра может послужить обнаружение в нём записей о вредоносных программах. Такими зловредами могут быть и баннерные вирусы, и трояны, и рекламные ссылки, терроризирующие пользователя постоянным запуском заданных web-страниц в браузере. О способах избавления от последних, кстати говоря, мы писали в соответствующей статье: Стартовая страница браузера. Решение проблем
Добавление и изменение параметров ключей в реестре Windows
Мы уже рассматривали пример настроек параметров Windows через добавление записей реестра в статьях Открытие проводника Windows 10 на закладке Этот компьютер и Автозагрузка. Добавление приложений в автозагрузку Windows.
Запускаем редактор реестра Windows.
Далее, в левой части окна переходим к ветке
Теперь в правой части окна находим ключ EnableLUA и кликаем по нему двойным щелчком мышки.
В поле меня 1 на 0 и нажимаем кнопку OK
Теперь при запуске программ, требующих дополнительные разрешения, окно контроля учётных записей UAC появляться не будет.
В целях безопасности проводить отключение UAC , так как компьютер становится более уязвимым к несанкционированному запуску вредоносных программ
На этом закончим знакомство с системным реестром Windows.
В статье Создание reg-файлов. Синтаксис записей реестра мы подробнее рассмотрим тему о том, как создавать reg-файлы для автоматизации работы с реестром, чтобы не править нужные параметры вручную. О том же, как работать с реестром из командной строки, мы поговорим в рамках отдельной публикации Редактирование реестра Windows из командной строки, bat-файлы
Реестр Windows, обычно называемый просто реестром, представляет собой набор баз данных настроек конфигурации в операционных системах Microsoft Windows.
Реестр Windows иногда неправильно записывается как регистр.
Для чего используется реестр Windows
Реестр Windows используется для хранения большей части информации и настроек для программ, аппаратных устройств, пользовательских настроек, конфигураций операционной системы и многого другого.
Например, когда установлена новая программа, новый набор инструкций и ссылок на файлы может быть добавлен в реестр в определенном месте для программы и других, которые могут с ней взаимодействовать, для получения дополнительной информации, например, где расположены файлы, какие опции использовать в программе и т.д.
Во многих отношениях реестр можно рассматривать как своего рода ДНК для операционной системы Windows.
Не обязательно для всех приложений Windows использовать реестр Windows. Некоторые программы хранят свои конфигурации в файлах XML вместо реестра, а другие – полностью переносимые и хранят свои данные в исполняемом файле.
Как получить доступ к реестру Windows
Реестр Windows доступен и настраивается с помощью программы редактора реестра, бесплатной утилиты редактирования реестра, включенной по умолчанию в каждую версию Microsoft Windows.
Редактор реестра – это программа, которую не нужно загружать. Вместо этого к ней можно получить доступ, выполнив regedit из командной строки или из поля поиска меню «Пуск».
Редактор реестра – это своеобразное «лицо реестра», способ просмотра и внесения изменений в реестр, но это не сам реестр. Технически, реестр – это собирательное имя для различных файлов базы данных, расположенных в каталоге установки Windows.
Как использовать реестр Windows
Реестр содержит значения реестра (которые являются инструкциями), расположенные в разделах реестра (папках, которые содержат больше данных), все в одном из нескольких кустов реестра («основные» папки, которые классифицируют все данные в реестре с использованием подпапок). Внесение изменений в эти значения и ключи с помощью редактора реестра изменит конфигурацию, которой управляет конкретное значение.
Вот несколько примеров, когда внесение изменений в значения реестра решает проблему:
- Автоматический вход в Windows без пароля
- Изменение лицензионного ключа Windows
- Удаление значений реестра UpperFilters и LowerFilters
- Подделка синего экрана BSOD
- Проверка версии BIOS вашего ПК
На реестр постоянно ссылаются Windows и другие программы. Когда вы вносите изменения практически в любой параметр, изменения также вносятся в соответствующие области реестра, хотя эти изменения иногда не реализуются, пока вы не перезагрузите компьютер.
Учитывая важность реестра Windows, очень важно создать резервную копию изменяемых частей перед тем, как их менять. Файлы резервной копии реестра Windows сохраняются в виде файлов REG.
Доступность реестра Windows
Реестр Windows и программа редактора реестра Microsoft доступны практически во всех версиях Microsoft Windows, включая Windows 10, Windows 8, Windows 7, Windows Vista, Windows XP, Windows 2000, Windows NT, Windows 98, Windows 95 и другие.
Несмотря на то, что реестр доступен практически во всех версиях Windows, между ними существуют небольшие различия.
Реестр Windows заменил autoexec.bat, config.sys и почти все файлы INI, которые содержали информацию о конфигурации в MS-DOS и в очень ранних версиях Windows.
Где хранится реестр Windows
Файлы реестра SAM, SECURITY, SOFTWARE, SYSTEM и DEFAULT, в частности, хранятся в более новых версиях Windows (например, Windows XP – Windows 10) в папке %SystemRoot%System32Config.
В старых версиях Windows папка %WINDIR% используется для хранения данных реестра в виде файлов DAT. Windows 3.11 использует только один файл реестра для всего реестра Windows, который называется REG.DAT.
В Windows 2000 хранится резервная копия системного ключа HKEY_LOCAL_MACHINE, которую можно использовать в случае проблем с существующим.
В системном реестре компьютера хранится информация о параметрах и настройках операционной системы, программ и оборудования.
При установке программы информация о ней заносится в реестр автоматически. Но в некоторых случаях пользователь сталкивается с необходимостью внести информацию в системный реестр вручную.
Инструкция
- Предположим, что вам надо добавить в системный реестр информацию для автоматического запуска при старте компьютера какой-либо программы, пусть это будет “Блокнот”. Если операционная система находится у вас на диске “С”, то путь к Блокноту будет такой: C:WindowsSystem32
otepad.exe - В операционной системе Windows программы, запускаемые автоматически при старте системы, могут находиться в нескольких разделах реестра. В частности, в разделе HKEY_LOCAL_MACHINE SOFTWARE Microsoft Windows CurrentVersion Run. Пройдите в редакторе реестра по этому пути, выделите мышкой раздел Run. Вы увидите в нем несколько автоматически запускаемых программ – например, брандмауэра и антивирусной программы.
- Чтобы Блокнот запускался автоматически при старте компьютера, вам надо добавить в раздел Run соответствующий ключ. Нажмите в правом окне редактора реестра правой кнопкой мыши и выберите “Создать – Строковый параметр”. Его имя может быть любым – например, Notepad.
- Теперь вам надо добавить путь к исполнимому файлу. Нажмите созданный строковый параметр Notepad правой кнопкой мышки, нажмите “Изменить”. В открывшемся окне введите в строку “Значение”: “C:WindowsSystem32
otepad.exe” Обратите внимание на кавычки – они должны быть. - Информация в реестр добавлена. Закройте редактор и перезагрузите компьютер. Если вы все сделали правильно, то после загрузки компьютера увидите открытый Блокнот. Он будет запускаться при старте Windows до тех пор, пока вы не удалите созданный вами раздел реестра с ключом автозапуска.
Ссылки по теме
На нашем ресурсе уже есть публикация, описывающая основной способ работы с системным реестром Windows: Изменение параметров cистемного реестра Windows. Также мы рассматривали способ автоматизации процесса при помощи специальных файлов: Создание reg-файлов. Синтаксис редактирования записей реестра – позволяющий значительно упростить монотонную работу и воспроизведение часто используемых настроек. В рамках данной статьи мы затронем логическое продолжение темы, а именно, поговорим о том, как редактировать реестр из командной строки.
Точнее сказать, мы, разумеется, не будем раз за разом вручную прописывать нужные параметры в окне консоли, не для этого данный способ нужен, мы рассмотрим вариант внесения изменений в системный реестр Windows при помощи bat-файлов.
Достаточно подробно о создании и использовании батников речь шла в записи Пакетные файлы (bat, батники) Windows, ещё одна функция, которую можно и нужно использовать – изменение записей реестра при помощи cmd языка.
Использование батников для редактирования реестра иногда может быть выгоднее и удобнее, нежели работа со стандартными для этих целей reg-файлами.
- батники шире используются в администрировании;
- батники имеют режим тихого запуска (без всплывающих окон);
- батники можно запускать с повышенными правами, то есть от имени Администратора;
- с помощью бат-файлов возможна работа с реестром сетевых машин.
Работа с реестром из командной строки
Синтаксис бат-файлов и процесс их создания описан в статье, приведённой выше, в данной же публикации затронем исключительно тему, касающуюся выполнения функции изменения реестра из командной строки.
Сразу отметим, что в bat-файлах не требуется заголовок в начале файла по типу того, что используется в reg-файлах: Windows Registry Editor Version 5.00 – здесь можно начинать писать команду с первой же строки.
Для начала приведём основные параметры, используемые при работе с реестром из командной строки:
- – имя добавляемого/изменяемого ключа;
- – добавление пустого параметра;
- – параметр для указания типа добавляемых/изменяемых данных;
- – значение, присваиваемое параметру;
- – применение команды ко всем вложенным ключам;
- – отключение системных предупреждений при выполнении операции.
Но, конечно, основа любого батника Windows – сама команда. Итак, приведём список команд, используемых для редактирования реестра.
– команда для добавления данных, будь то параметры, ключи или целые ветки.
Допустим, после вирусной атаки нам необходимо вернуть место хранения hosts файла (а также файлов lmhosts, networks и protocols) в директорию %SystemRoot%System32driversetc Для этого нужно выполнить команду:
reg add HKLMSYSTEMCurrentControlSetServicesTcpipParameters /v DataBasePath /t REG_EXPAND_SZ /d %%SystemRoot%%System32driversetc /f
Если немного применить фантазию и оформить батник, то код будет выглядеть примерно следующим образом:
Вот такой файл, как в архиве, у нас получится: drivers_etc
Остальные примеры в данной статье будем приводить вымышленные, дабы при их тестировании не вносить нежелательных изменений в реестр
– команда для удаления указанной информации из реестра компьютера.
Чтобы удалить определённый параметр, нам достаточно указать его полный путь после команды удаления. Пример:
Данная команда удалит параметр Save из указанной ветки.
– команда для копирования параметров и ключей из одной ветки реестра в другую.
Для копирования параметров достаточно после команды последовательно прописать сначала исходную ветку, а потом изменяемую. Например:
– команда для экспорта указанных веток реестра в виде *.reg файла на жёсткий диск.
Пример использования:
reg export HKLMSoftwareGamesFootball MyBackup.reg
В результате выполнения данной команды будет создан рег-файл с бэкапом раздела Football.
– команда, позволяющая импортировать данные из reg-файла в реестр системы.
Пример использования:
reg import MyBackup.reg
В результате выполнения данной команды записи из рег-файла будут импортированы в реестр.
– данная команда возвращает значение запрашиваемых параметров и кустов реестра.
Пример использования:
reg query HKLMSoftwareGamesFootball /v Run
В ответ будет возвращено значение параметра Run в реестре.
– команда позволяет сравнить две указанные последовательно ветки реестра.
Пример использования:
В ответ команда возвращает одно из значений: 0 – данные веток идентичны; 1 – при выполнении операции произошла ошибка; 2 – данные веток отличаются.
, , , – команды, позволяющие бэкапить и восстанавливать нужные ветки системного реестра Windows при помощи файлов *.hiv.
Изменение параметров реестра компьютера в сети
Выше мы рассмотрели достаточно широкие возможности батников в работе с реестром операционной системы. Последний момент, который отметим в контексте данной темы – это редактирование реестра компьютеров в локальной сети.
Ну и главное: чтобы работать с реестром компьютера в сети, необходимо в применяемой команде перед разделом указать имя удалённой машины, начинающееся с двойного обратного слеша.
При этом, в командах, обрабатывающих сразу несколько разделов (например, копирование из одного раздела в другой, сравнение веток), одна из веток может располагаться на локальном компьютере, а другая на компьютере в сети.
То есть, для копирования ветки с удалённой машины на наш компьютер необходимо выполнить следующую команду:
На этом заключительную статью описания общих принципов работы с реестром компьютера и с bat-файлами можно считать завершённой.
Безошибочных вам команд и корректных ключей реестра.
Реестр Windows (Windows Registry) – это центральная база данных настроек и параметров во всех операционных системах семейства Windows (начиная с Windows 3.1). В нем хранится вся информация об аппаратных средствах, операционной системе и установленных в ней приложениях, а также пользовательские данные и настройки. По аналогии с человеческой анатомией я бы назвал реестр центральной нервной системой компьютера, ведь от настроек реестра напрямую зависит поведение системы в той или иной ситуации.
Реестр не является единым целым, а представляет из себя составную структуру, динамически формирующуюся из различных данных следующим образом:
- Сначала, при установке ОС, создаются файлы, хранящие данные о начальной конфигурации системы.
- Затем, в процессе загрузки и входа пользователя в систему формируется некий виртуальный объект Registry. Данные для формирования он берет частично из тех самых файлов, частично из информации, собранной при загрузке Windows.
Этот объект и является тем самым реестром, с которым взаимодействует операционная система и который видим мы.
Основные файлы, отвечающие за формирование реестра
- system
- software
- sam
- security
- default
- components
- bcd-template
Хранятся они в папке %SystemRoot%System32Config (обычно это C:WindowsSystem32Config) и в зависимости от версии ОС их состав может несколько различаться.
Еще есть резервные копии файлов реестра, созданные системой, в зависимости от ОС они хранятся в:
C:Windows
epair — для XP и Server 2003;
C:WindowsSystem32configRegBack — для Windows 7 Server 2008 и более новых.
По умолчанию операционная система делает резервные копии этих файлов раз в 10 дней с помощью планировщика задач.
Взаимодействие реестра с операционной системой
• При запуске компьютера распознаватель аппаратных средств (hardware recognizer) помещает в реестр список обнаруженных им устройств. Обычно распознавание аппаратных средств осуществляется программой Ntdetect.com и ядром операционной системы Ntoskrnl.exe
• При старте системы ядро системы извлекает из реестра сведения о загружаемых драйверах устройств и порядке их загрузки. Кроме того, программа Ntoskrnl.exe передает в реестр информацию о себе (напр. номер версии).
• В процессе загрузки системы драйверы устройств обмениваются с реестром параметрами загрузки и конфигурационными данными. Драйвер устройства сообщает об используемых им системных ресурсах, включая аппаратные прерывания (IRQ) и каналы доступа к памяти (DMA), чтобы система могла включить эти данные в реестр. Кстати, реестр позволяет создавать несколько аппаратных профилей. Аппаратный профиль (hardware profile) представляет собой набор инструкций, с помощью которого можно указать операционной системе, драйверы каких устройств должны загружаться при запуске компьютера. По умолчанию системой создается стандартный аппаратный профиль, который содержит информацию обо всех аппаратных средствах, обнаруженных на компьютере.
• При установке приложений. Каждый раз при запуске программы установки происходит добавление в реестр новых конфигурационных данных. Начиная свою работу, все программы установки должны считывать информацию из реестра, чтобы определить, присутствуют ли в системе необходимые им компоненты. Кроме того, системный реестр позволяет приложениям совместно использовать конфигурационную информацию, что предоставляет им больше возможностей для взаимодействия. Приложение должно активно и правильно использовать реестр, а также иметь возможность корректного удаления, не затрагивая при этом компонентов, которые могут использоваться другими программами (библиотеки, программные модули и т. п.). Эта информация тоже хранится в реестре.
• При администрировании системы. Когда пользователь вносит изменения в конфигурацию системы с помощью средств администрирования системы (напр. утилиты Панели управления или оснастки MMC), все изменения сразу отражаются в системном реестре. По сути средства администрирования представляют собой наиболее удобные и безопасные средства модификации реестра. Кстати, к средствам администрирования можно отнести и редактор реестра (regedit.exe), ведь все изменения в систему можно вносить непосредственно правкой реестра.
Реестр имеет древовидную структуру и состоит из 5 основных разделов, их еще называют ветвями реестра (Registry hives):
HKEY_LOCAL_MACHINE (HKLM) — самый большой раздел реестра. В нем сосредоточены все основные настройки операционной системы, а также аппаратного и программного обеспечения компьютера. Информация, содержащаяся в этом разделе, применяется ко всем пользователям, регистрирующимся в системе.
HKEY_CURRENT_ CONFIG (HKCC) — cодержит настройки для текущего аппаратного профиля. Текущий аппаратный профиль включает в себя наборы изменений, внесенных в стандартную конфигурацию устройств, заданную в подразделах Software и System корневого раздела HKEY LOCAL_MACHINE. В HKEY_CURRENT_CONFIG отражаются только изменения. Кроме того, информация этого раздела находится в HKEY_LOCAL_MACHINESystem CurrentControlSetHardwareProfilesCurrent
Данные в реестре хранятся в виде параметров, расположенных в ключах реестра. Каждый параметр характеризуется именем, типом данных и значением.
Основные типы данных, применяемые в реестре
REG_DWORD — 32-х разрядное число. Этот тип данных используют многие параметры драйверов устройств и сервисов. Редакторы реестра могут отображать эти данные в двоичном, шестнадцатеричном и десятичном формате
REG_SZ — Текстовая строка в формате, удобном для восприятия человеком. Значениям, представляющим собой описания компонентов, обычно присваивается именно этот тип данных
REG_EXPAND_SZ — Расширяемая строка данных. Эта строка представляет собой текст, содержащий переменную, которая может быть заменена при вызове со стороны приложения, например, используется для записи переменных окружения
REGJMULTI_SZ — Многострочное поле. Значения, которые фактически представляют собой списки текстовых строк в формате, удобном для восприятия человеком, обычно имеют этот тип данных. Строки разделены символом NULL
REG_BINARY — Двоичные данные. Большинство аппаратных компонентов используют информацию, которая хранится в виде двоичных данных. Редакторы реестра отображают эту информацию в шестнадцатеричном формате
REG_RESOURCE_LIST — Список аппаратных ресурсов. Применяется только в ветви HKEY_LOCAL_MACHINEHARDWARE
Также иногда можно встретить такие типы данных реестра:
REG_RESOUECE_ REQUIREMENTS_LIST — Список необходимых аппаратных ресурсов. Применяется только в ветви HKEY_LOCAL_MACHINEHARDWARE
REG_FULL_RESOURCE_ DESCRIPTOR — Дескриптор (описатель) аппаратного ресурса. Применяется только в ветви HKEY_LOCAL_MACHINEHARDWARE
REG_LINK — Символическая ссылка Unicode. Этот тип данных интересен тем, что позволяет одному элементу реестра ссылаться на другой ключ или параметр.
REG_QWORD — 64-х разрядное число.
REG_DWORD_ LITTLE_ENDIAN — 32-разрядное число в формате «остроконечников» (little-endian), эквивалент REG_DWORD
REG_DWORD_BIG_ ENDIAN — 32-разрядное число в формате «тупоконечников» (big-endian)
REG_QWORD_LITTLE_ ENDIAN — 64-разрядное число в формате «остроконечников». Эквивалент REG_QWORD
REG_NONE — Параметр не имеет определенного типа данных