Теперь пару слов о параметрах, которые можно добавлять. Как вы, наверное, обратили внимание, в приведенном выше примере добавляются параметры с помощью строк типа "param1"="znachenie1". Т.е. таким образом добавляется СТРОКОВЫЙ параметр с именем "param1" и значением "znachenie1". Но ведь существуют еще и параметры двоичные и DWORD. Формат записи для их добавления несколько другой. Для параметров типа DWORD используется строка
"param"=dword:XXXXXXXX
Здесь "param" - имя параметра, dword - указывает на тип этого параметра (буквы должны быть обязательно маленькие!) и после двоеточия следует значение из восьми цифр в шестнадцатеричном (!) формате. Однако большинство параметров DWORD имеют значение либо 0, либо 1, значит, вы должны написать соответственно либо 00000000, либо 00000001 вместо значков ХХХХХХХХ. Пробелы в строке не допускаются.
Для добавления двоичного параметра формат записи несколько иной:
"param"=hex:XX,XX,XX,....
Теперь расшифрую эту строку. Ну, с названием параметра все ясно, после знака "=" идет hex, т.е. указывается, что это будет двоичный параметр, затем идут шестнадцатеричные числа, отделенные запятой. Например, если вам надо добавить двоичный параметр равный "be 00 00 00", то вы пишете строку
"param"=hex:be,00,00,00
В реестре существуют параметры "По умолчанию" ("Default"). Чтобы присвоить им какое-то значение через reg-файл, надо добавить такую строку:
@="znachenie"
Здесь значок @ показывает, что у нас присваивается значение параметра "По умолчанию". Обратите внимание на то, что он не заключается в кавычки.
Теперь я приведу пример простенького reg-файла, который прописывает в реестр сайт, устанавливающий домашнюю страничку в Internet Explorer'e:
REGEDIT4
HKEY_CURRENT_USER\Software\ Microsoft\Internet Explorer\Main]
"Start Page" = http://winchanger.narod.ru/
Удаление параметров
С помощью reg-файлов можно не только устанавливать новые параметры, но и удалять их. Например, для удаления раздела из реестра надо перед его именем в квадратных скобках поставить символ "-". Вот как это выглядит:
[-HKEY_LOCAL_MACHINE\Software\ QuickSoft\QuickStart]
Благодаря этой записи, подраздел "QuickStart" из раздела "QuickSoft" будет удален со всем содержимым.
Для удаления отдельных параметров используйте следующий синтаксис:
REGEDIT4
[HKEY_CURRENT_USER\Software]"xxx"=-Параметры командной строки
Редактор реестра можно запускать с некоторыми ключами
/s (импортирует значения из reg-файла без вывода диалогового окна)
/e (экспортирует параметры в reg-файл.
Пример: regedit /e myfile.reg HKEY_USERS\.DEFAULT
Утилиты для работы с реестром
RegClean - это утилита от Майкрософт для работы с реестром. Рекомендуется для содержания реестра в надлежащем порядке
RegClean анализирует ключи реестра, расположенные в разделе HKEY_CLASSES_ROOT и находит ключи, содержащие ошибочные значения. RegClean записывает эти значения в файл Undo*.reg, имеющий следующий формат - после Undo записывается имя компьютера, дата и время:
Undo SASHA 20020721 110917.Reg
Затем RegClean удаляет ошибочные записи из реестра
RegClean не является универсальной программой для лечения и восстановления реестра и не способна находить и исправлять ошибки в других разделах
Скачать программу можно по адресу http://winchanger.narod.ru/regclean.zip
Запустите RegClean (regclean.exe). RegClean выводит окно с индикатором прогресса. В это время программа сканирует реестр. В зависимости от размера вашего реестра и мощности компьютера сканирование может занять от 30 секунд до 30 минут.
После окончания сканирования индикатор прогресса исчезнет и вам будет предложено два варианта для продолжения:
Закончить работу RegClean - если вы не хотите очистить реестр и сохранить найденные ошибки, то выбирайте кнопку Cancel
Зафиксировать ошибки - если вы хотите очистить реестр от ошибок и сохранить найденные ошибки, то жмите на кнопку Fix Errors. Через несколько секунд программа запишет найденные ошибки в файл, который находится в той же папке, где установлена ваша программа RegClean. После этого вы можете закрыть программу, нажав кнопку Exit.
Если в течение нескольких дней ваша система работает стабильно, вы можете удалить созданный файл. Если в вашем компьютере стали возникать ошибки, и вы думаете, что это произошло из-за удаленных записей реестра, то можете восстановить прежние параметры, щелкнув два раза на сохраненном файле Undo.reg
Registry Monitor (или regmon для краткости) - незаменимый помощник всех исследователей реестра. Программа была написана программистами Mark Russinovich и Bryce Cogswell. Официальный сайт программы http://www.sysinternals.com.
Эта программа позволяет отследить ВСЕ обращения к реестру. Неважно, что вы делаете: устанавливаете какой-то софт, работаете с программами или просто запускаете их, Windows постоянно обращается к реестру. И все эти обращения можно зафиксировать с помощью Regmon. По-моему нет необходимости говорить о том, насколько такая информация может быть полезной. Теперь, проведя любые изменения в настройках системы, вы сможете узнать, где именно в реестре они отражаются. А куда в реестре обращается при запуске ваша любимая программа? И не прописывает ли при установке свежескачанная утилитка какой-нибудь непонятный файл в автозагрузку ;)? А сколько раз бывало, что заканчивался срок работы триальной программы, и для дальнейшей работы она требовала регистрации... Посмотрите с помощью Regmon, куда она обращается при запуске, и вы без труда найдете в реестре параметр, где указана дата инсталляции. Ну, а дальше все в ваших руках...
Возможности программы большие, но не безграничные. Программа только отслеживает обращения к реестру.
Найти программу можно на сайте http://www.sysinternals.com
Все обращения к реестру выводятся в основном окне программы в виде семи колонок. Я думаю, описывать их нет смысла, все и так понятно. Основные функции по работе с программой вынесены в виде кнопок на переднюю панель - нет ничего лишнего и все нужное под рукой. Пройдемся по всем этим кнопкам:
1. Save (Ctrl+S) - ну, тут все понятно - вы можете сохранить лог работы программы в отдельном файле, чтобы потом на досуге изучить его;
2. Capture (Ctrl+E) - временная приостановка/начало слежения за обращениями к реестру;
3. Autoscroll (Ctrl+A) - запрещение/разрешение слежения за последней записью. Если эта функция включена, то список обращений будет автоматически прокручиваться на экране таким образом, чтобы всегда была видна последняя строка;
4. Clear (Ctrl+X) - очистка списка (кто бы мог подумать?). Одно неприятно - если этот список достаточно большой, то он очень долго очищается, даже иногда виснет;
5. Time Format (Ctrl+T) - переключение между режимами отображения времени во втором столбце. Первый вариант - показывает системное время, в которое произошло обращение к реестру, второй вариант - время в секундах прошедшее с момента запуска regmon'a;
6. Filter/Highlight (Ctrl+L) - установка фильтров. Вы можете отслеживать обращения к реестру только конкретных программ, можете отключить слежение за определенными программами. Для установки фильтров надо указывать имя программы, при этом можно использовать маску. Так, например, фильтр "i*" будет применен и для icq, и для iexplore. Жаль нельзя использовать "?";