Как удалить ключ в реестре из командной строки

В некоторых ситуациях, бывает необходимо удалить какой-либо элемент из реестра, но сделать это надо не с помощью всем известной утилиты regedit, а через bat скрипт или с помощью командой строки. В данной статье пойдет речь как раз об этом.
Примеры
Для работы с реестром из командной строки предназначена утилита reg.exe, которая входит в состав большинства версий Windows.
Для получения подробных сведений о работе с утилитой reg.exe выполните в командной строке
Чтобы удалить параметр в реестре выполните следующую команду:
Эта команда удалит параметр Path, который находится в разделе HKCU\Software\WindowsFAQ\Test. Обратите внимание на то, что при выполнении этой команды выдается запрос на подтверждение удаления. При работе команды в пакетном файле его исполнение может быть прервано для подтверждения пользователем удаления параметра. Чтобы подтверждение не выводилось используйте /f. Этот ключ отключает вывод подтверждения.
При помощи reg.exe можно удалить сразу целый раздел, вместе со всеми параметрами и подразделами, находящимися в нем. Для этого используйте следующую команду:
Результатом работы этой команды станет удаление раздела WindowsFAQ вместе со всеми подразделами и параметрами. Обратите внимание на то, что, как и в первом случае, выполнение команды останавливается на запросе подтверждения удаления раздела. Чтобы отключить этот запрос добавьте к команде /f, т.е. команда будет выглядеть следующим образом:
Будьте внимательны с удалением параметров и разделов, по неосторожности можно удалить что-то нужное, особенно, когда отключено подтверждение удаления.
Как удалить ключ реестра
или (для Windows 2000/XP)
Windows Registry Editor Version 5.00
Обратите внимание на то, что буквы должны быть большие. Кроме этого в первой строке ничего быть не должно. После этого текста ОБЯЗАТЕЛЬНО должна быть пустая строка. Затем, указывается раздел реестра, в котором надо прописать или изменить какие-то параметры. Название раздела должно быть заключено в квадратные скобки [. ]. Ниже прописываются параметры, которые надо добавить, по одному параметру в строке. Если вам надо провести изменения в нескольких разделах, то вы должны оставлять одну пустую строку между последним параметром предыдущего раздела и названием следующего раздела. Может немного запутанно, но вот как это должно выглядеть:
Последняя строка в файле должна быть ПУСТОЙ. После того, как вы создали такой файл, просто запустите его как обычную программу, вам будет выдан запрос о необходимости провести изменения в реестре, и после положительного ответа информация из файла будет импортирована. О результатах импортирования Windows сообщит в появившемся после этого окне.
Примечание: Windows 2000/XP обладает обратной совместимостью и может обрабатывать файлы, созданные в Windows 9x. Но если вы экспортировали файл в Windows XP и перенесли его на Windows 9x, то вручную измените первую строчку на REGEDIT4
Теперь пару слов о параметрах, которые можно добавлять. Как вы, наверное, обратили внимание, в приведенном выше примере добавляются параметры с помощью строк типа "param1"="znachenie1". Т.е. таким образом добавляется СТРОКОВЫЙ параметр с именем "param1" и значением "znachenie1". Но ведь существуют еще и параметры двоичные и DWORD. Формат записи для их добавления несколько другой. Для параметров типа DWORD используется строка
Здесь "param" — имя параметра, dword — указывает на тип этого параметра (буквы должны быть обязательно маленькие!) и после двоеточия следует значение из восьми цифр в шестнадцатеричном (!) формате. Однако большинство параметров DWORD имеют значение либо 0, либо 1, значит, вы должны написать соответственно либо 00000000, либо 00000001 вместо значков ХХХХХХХХ. Пробелы в строке не допускаются.
Для добавления двоичного параметра формат записи несколько иной:
Теперь расшифрую эту строку. Ну, с названием параметра все ясно, после знака "=" идет hex, т.е. указывается, что это будет двоичный параметр, затем идут шестнадцатеричные числа, отделенные запятой. Например, если вам надо добавить двоичный параметр равный "be 00 00 00", то вы пишете строку
В реестре существуют параметры "По умолчанию" ("Default"). Чтобы присвоить им какое-то значение через reg-файл, надо добавить такую строку:
Здесь значок @ показывает, что у нас присваивается значение параметра "По умолчанию". Обратите внимание на то, что он не заключается в кавычки.
Теперь я приведу пример простенького reg-файла, который прописывает в реестр сайт, устанавливающий домашнюю страничку в Internet Explorer’e:
[HKEY_CURRENT_USER\Software\ Microsoft\Internet Explorer\Main]
"Start Page" = "http://winchanger.narod.ru/"
Удаление параметров
С помощью reg-файлов можно не только устанавливать новые параметры, но и удалять их. Например, для удаления раздела из реестра надо перед его именем в квадратных скобках поставить символ "-". Вот как это выглядит:
Благодаря этой записи, подраздел "QuickStart" из раздела "QuickSoft" будет удален со всем содержимым.
Для удаления отдельных параметров используйте следующий синтаксис:
Параметры командной строки
Редактор реестра можно запускать с некоторыми ключами
Как удалить ключ реестра
Эта статья предназначена для продвинутых пользователей, администраторов и ИТ-специалистов.
Импорт регистрационных записей (.reg) файлов является особенностью Regedit.exe и не поддерживается Regedt32.exe. Вы можете использовать Regedit.exe для внесения некоторых изменений в реестр на Windows NT 4.0 или Windows 2000 основе компьютера, но некоторые изменения требуют Regedt32.exe. Например, нельзя добавлять или изменять REG_EXPAND_SZ или REG_MULTI_SZ значения с помощью Regedit.exe на windows NT 4.0 или windows 2000-компьютер. Regedt32.exe является основным редактором реестра для Windows NT 4.0 и Windows 2000. Если необходимо использовать Regedt32.exe, вы не можете использовать файлы регистрационных записей (.reg) для изменения реестра. Для получения дополнительной информации о различиях между Regedit.exe и Regedt32.exe, нажмите следующий номер статьи, чтобы просмотреть статью в базе знаний Microsoft:
141377 Различия между Regedit.exe и Regedt32.exe
Содержание
Аннотация
Внимание! В этом разделе, описании способа или задачи содержатся сведения об изменении реестра. Но неправильное изменение параметров реестра может привести к возникновению серьезных проблем. Поэтому такие действия следует выполнять очень внимательно. Чтобы обеспечить дополнительную защиту, создайте резервную копию реестра перед его изменением. Это позволит восстановить реестр при возникновении неполадок. Дополнительные сведения о создании резервной копии и восстановлении реестра см. в следующей статье базы знаний Майкрософт:
322756 Как создать резервную копию и восстановить реестр в WindowsЭта пошаговая статья описывает, как добавлять, изменять или удалять подки и значения реестра с помощью файла Регистрационные записи (.reg). Regedit.exe использует файлы .reg для импорта и экспорта подключ и значений реестра. Эти файлы .reg можно использовать для удаленного распространения изменений реестра на нескольких компьютерах на базе Windows. При запуске файла .reg содержимое файла сливается в локальный реестр. Поэтому необходимо распространять файлы .reg с осторожностью. вернуться к вершине
Синтаксис . Reg Файлы
Файл .reg имеет следующий синтаксис: Линия реестраEditorВерсиябланкаRegistryPath1DataItemName1«»DataType1:DataValue1» DataItemName2«я»DataType2:DataValue2» Пустая линияRegistryPath2DataItemName3«»DataType3:DataValue3» Где: RegistryEditorVersion является либо «Windows реестра редактор версия 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 — это путь подключаемого ключа, который содержит первое значение, которое вы импортируете. Закройте путь в квадратные скобки и разделите каждый уровень иерархии на задний план. Например: