Использование специальных утилит для работы с реестром сторонних производителей

Существует немало программ сторонних производителей для работы с реестром, позволяющих не только сохранять и восстанавливать данные реестра, но и выполнять массу других полезных операций, таких, как диагностика и удаление ошибочных или ненужных данных, оптимизация, дефрагментация и т.п. Большинство из них платные - jv16 Power Tools, Registry Mechanic, Super Utilities Pro, Reg Organizer и другие.
К основным преимуществам данных программ можно отнести, как правило, простой интерфейс пользователя, возможность выполнить тонкую настройку операционной системы и предпочтений пользователя, чистку от ненужных записей, расширенные возможности по поиску и замене данных, резервное копирование и восстановление.
Пожалуй, самым популярным программным обеспечением для работы с реестром является jv16 Power Tools компанииMacecraft Software. Главные достоинства - высокая надежность, многофункциональность, простота и удобство использования, поддержка нескольких языков, в т.ч. русского. Однако не все знают, что существует и бесплатный вариант, называющийся Power Tools Lite. Конечно, до полнофункциональной jv16 ему далеко, но для поиска данных, чистки и оптимизации реестра вполне подойдет. Замечу, что резервная копия создаваемая данной программой является всего лишь reg-файлом для восстановления состояния реестра до момента его изменения. Многие (если не большинство) программы для работы с реестром создают аналогичные копии, пригодные только для восстановления тех данных, которые они изменяют. В случае порчи реестра они вам не помогут. Поэтому, выбирая (особенно бесплатную) программу с возможностью резервного копирования реестра, разберитесь, какие же копии она создает. Идеальный вариант - программа, создающая копии всех кустов реестра. При наличии такой копии вы всегда сможете полностью восстановить реестр обычным копированием файлов.
Утилита сохраняет файлы реестра в каталог, указываемый в качестве параметра командной строки:
regsaver.exe D:\regbackup
После выполнения программы в каталоге D:\regbackup будет создан подкаталог с уникальным именем, состоящим из года, месяца, числа и времени создания резервной копии файлов реестра ("yyyymmddhhmmss"). После выполнения резервирования программа может выключить компьютер или перевести его в спящий режим:

regsaver.exe D:\regbackup /off /ask - Выключить компьютер. Ключ /ask требует подтверждения пользователя при выключении питания.
regsaver.exe D:\regbackup /standby- Перевести в спящий режим без подтверждения (нет /ask)
regsaver.exe D:\regbackup /hibernate /ask - Перевести в режим Hibernate

Вместо стандартного выключения компьютера можно использовать резервное копирование реестра с выключением по его завершению.


7. Восстановление реестра, при отсутствии резервных копий.

К примеру, при загрузке системы, вы видите сообщение о нарушении целостности куста реестра SYSTEM:

Windows XP could not start because the following file is missing or corrupt: \WINDOWS\SYSTEM32\CONFIG\SYSTEM.
Если у вас не выполнялось резервирование данных реестра, был отключен механизм создания контрольных точек восстановления или вы использовали Win2K, где этого механизма просто не существует, то все равно есть шансы оживить систему, загрузившись в другой ОС и восстановив файл system. Даже если содержимое этого файла будет не совсем актуальным, система, с большой долей вероятности, останется работоспособной. Возможно, придется переустановить некоторые программные продукты, или обновить драйверы.


· - использование резервных файлов реестра, автоматически созданных каким-либо программным обеспечением. Откройте папку \Windows\system32\config и проверьте, нет ли в ней файла system.bak(возможно другое расширение, отличное от .alt и .log), переименуйте его в system и попробуйте загрузиться.


· - использование, сохраненного после начальной установки, файла (файлов) из каталога \WINDOWS\REPAIR. Такой вариант, не самый оптимальный, на крайний случай.


· - использование функции восстановления редактора реестра Windows XP при загрузке поврежденного куста.
Редактор реестра позволяет открывать файлы не только "своего" реестра, но и файлы, являющиеся реестром другой операционной системы. В Windows 2000 для загрузки файла (куста) реестра сохраненного на диске использовался редактор regedt32.exe, в Windows XP функции regedt32.exe и regedit.exe совмещены и, дополнительно, появилась возможность восстановления поврежденного куста при загрузке. Для этого загрузитесь в Windows XP (Windows Live, Winternals ERD Commander, установленная в другой каталог WinXP, другой компьютер с возможностью загрузки проблемного куста реестра по сети или с внешнего носителя). Запустите редактор реестра.
В левой части дерева реестра выберите один из разделов:
HKEY_USERS или HKEY_LOCAL_MACHINE.
В меню Реестр (Registry)(В других версиях редактора реестра этот пункт меню может называться "Файл") выберите команду "Загрузить куст(Load Hive)".
Найдите испорченный куст ( в нашем случае - system).
Нажмите кнопку Открыть.
В поле Раздел введите имя, которое будет присвоено загружаемому кусту. Например BadSystem.
После нажатия OKпоявится сообщение:

Использование специальных утилит для работы с реестром сторонних производителей - student2.ru

В левом окне редактора реестра выберите подключенный куст (BadSystem) и выполните команду "Выгрузить куст". Поврежденный system будет восстановлен. При чем, редактор реестра Windows XP вполне успешно восстановит реестр и более старой ОС Windows 2000.


Мониторинг реестра.

Одной из лучших программ для мониторинга реестра, с моей точки зрения, является RegMon Марка Руссиновича - маленькая и функциональная утилита, не требующая инсталляции и работающая в операционных системах Windows NT, 2000, XP, 2003, Windows 95, 98, Me и 64-разрядных версиях Windows для архитектуры x64.

Regmon позволяет в реальном масштабе времени отслеживать, какие приложения обращаются к реестру, в какие разделы, какую информацию они читают или пишут. Информация выдается в удобном виде, который можно настроить под свои нужды - исключить из результатов мониторинга данные о работе с реестром неинтересных вам приложений, подчеркнуть выбранным цветом то, что считаете особо важным, включить в результаты мониторинга только выбранные процессы. Программа позволяет быстро и легко выполнить запуск редактора реестра с переходом к указанному разделу или параметру. Имеется возможность выполнять мониторинг в процессе загрузки операционной системы с записью результатов в специальный журнал %SystemRoot\Regmon.log.
После старта RegMon, можно определить критерии фильтрации результатов мониторинга реестра:

Использование специальных утилит для работы с реестром сторонних производителей - student2.ru

По умолчанию протоколируются все события обращения к реестру. Фильтр задается значениями полей:

Include - Если * - выполнять мониторинг для всех процессов. Имена процессов разделяются символом ";". Например - FAR.EXE;Winlogon.exe - будут фиксироваться обращения к реестру только для процессов far.exe и winlogon.exe.
Exclude - какие процессы исключить из результатов мониторинга.
Highlight - какие процессы выделить выбранным цветом (по умолчанию - красным).

Значения полей фильтра запоминаются и выдаются при следующем старте Regmon. При нажатии кнопки Defaults выполняется сброс фильтра в установки по умолчанию - фиксировать все обращения к реестру. Значения полей фильтра удобнее формировать не при старте RegMon, а в процессе мониторинга, используя меню правой кнопки мыши для выбранного процесса - Include process - включить данный процесс в мониторинг, Exclude process - исключить данный процесс из мониторинга. После старта Regmon с фильтрами по умолчанию, вы увидите большое количество записей об обращении к реестру и, используя Include/Exclude process, можете настроить вывод результатов только нужного вам процесса (процессов).

Использование специальных утилит для работы с реестром сторонних производителей - student2.ru

Назначение колонок:

# - номер по порядку
Time - Время. Формат времени можно изменить с помощью вкладки Options
Process - имя процесса: идентификатор процесса (PID)
Request - тип запроса. OpenKey - открытие ключа (подраздела) реестра, CloseKey - закрытие, CreateKey - создание, QueryKey - проверка наличия ключа и получение количества вложенных ключей (подразделов, subkeys), EnumerateKey - получить список имен подразделов указанного раздела, QueryValue - прочитать значение параметра, SetValue - записать значение.
Path - путь в реестре.
Result - результат выполнения операции. SUCCESS - успешно, NOT FOUND - ключ (параметр) не найден. ACCESS DENIED - доступ запрещен (недостаточно прав). Иногда бывает BUFFER OVERFLOW - переполнение буфера - результат операции не помещается в буфере программы.
Other - дополнительная информация - результат выполненного запроса.

Программа очень проста в использовании. После старта, лучше выбрать фильтр по умолчанию, т.е. фиксировать все обращения к реестру, а затем, в основном окне программы, выбрать ненужный процесс и с помощью правой кнопки мыши вызвать контекстное меню - Exclude process - информация об обращении к реестру данного процесса выводиться не будет. И таким же образом отфильтровать другие, не интересующие вас процессы.

При работе с программой можно использовать меню File, Edit, Options или сочетание клавиш:

CTRL-S - сохранить результаты
CTRL-P - свойства выбранного процесса
CTRL-E - включить/выключить мониторинг
CTRL-F - поиск по контексту
CTRL-C - копировать выбранную строку в буфер обмена
CTRL-T - изменить формат времени
CTRL-X - очистить окно результатов мониторинга
CTRL-J - запустить редактор реестра и открыть ветвь указанную в колонке Path. Это же действие выполняется при двойном щелчке левой кнопки мыши. Очень полезная возможность, позволяет значительно экономить время.
CTRL-A - включить/выключить автоматическую прокрутку
CTRL-H - позволяет задать число строк результатов мониторинга. Еще одна очень полезная возможность - получить журнал обращений к реестру в процессе загрузки операционной системы.
Для этого выбираете меню Options-Log Boot. Программа выдаст сообщение, что Regmon сконфигурирован для записи обращений к реестру в файл журнала в процессе следующей перезагрузки ОС:

Использование специальных утилит для работы с реестром сторонних производителей - student2.ru

После перезагрузки ОС, в корневом каталоге системы C:\Windows) будет находиться файл Regmon.log с журналом результатов мониторинга. Режим записи в журнал будет продолжаться до запуска Regmon.exe вошедшим в систему пользователем и выполняется только для одной перезагрузки системы. Конечно же, содержимое журнала не будет полностью отображать абсолютно все обращения к реестру. Поскольку Regmon в режиме Log Boot инсталлируется в системе и, после перезагрузки, запускается в качестве драйвера, все обращения к реестру, произошедшие до его старта, в журнале не зафиксируются. Однако большая часть все же туда попадет, и вы увидите, что таких обращений будет несколько сотен тысяч.


Уход за реестром.

Мониторинг реестра наглядно демонстрирует интенсивное использование его данных прикладным и системным программным обеспечением. Установка и удаление программ, замена устройств, обновление прикладного ПО и т.п. - все это приводит к добавлению, удалению или изменению разделов и ключей реестра. Рано или поздно, в реестре появляются некондиционные или бесполезные данные, растет его размер и увеличивается фрагментированность. В некоторой степени падает быстродействие системы и снижается ее надежность. Чтобы этого не происходило, желательно периодически выполнять процедуры устранения ошибок и дефрагментации, данных реестра. Практически все утилиты для работы с реестром сторонних производителей умеют выполнять не только копирование и восстановление, но и операции по уходу за реестром. Как-то так вышло, что я много лет пользовался (начиная с Windows 98) утилитой Ontrack Fix-It Utility 2000 и продолжаю пользоваться ею, по сей день. Выходили новые версии, появлялись новые утилиты других производителей, но по надежности, простоте и удобству обслуживания реестра получалось что-то, все же, не так. И я возвращался опять к Fix-It.

Использование специальных утилит для работы с реестром сторонних производителей - student2.ru

Для сохранения и восстановления реестра используется раздел "Disk and Files" - "SystemSaver". Для обслуживания и оптимизации реестра - "System Registry" - "RegistryFixer" и "RegistryDefrag".


Автозапуск программ.

Кроме папки "Автозагрузка" для запуска программ используются разделы реестра:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
Последние 2 раздела (...Once) отличаются тем, что программы, прописанные в них запускаются только 1 раз и после выполнения параметры ключа удаляются..

Записи в HKLM относятся ко всем пользователям компьютера. Для текущего пользователя запуск определяется ключами в разделе HKU:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
Пример раздела HKLM\...\RUN:
Использование специальных утилит для работы с реестром сторонних производителей - student2.ru

В правом окне вы видите список параметров, значениями которых является строка, ссылающаяся на программу. При входе пользователя в систему, все перечисленные программы будут выполнены. Удалите параметр - программа не запустится. Но удалять можно не все. Поэкспериментируйте, меняя расширение exe на ex_.

Кроме программ, запускающихся при регистрации пользователя в системе, запускается еще огромное количество других, не всегда очевидных, - это и системные службы (сервисы), различные драйверы, программы оболочки (Shell) и т.п. Кроме полезных ( а иногда и бесполезных) программ могут выполняться, используя автоматический запуск и внедрившиеся в систему вирусы. Более подробно о вирусах здесь. Точек возможного автоматического запуска исполняемых модулей огромное множество, и для их поиска в реестре удобнее использовать специальные программы - мониторы автозапуска, наиболее популярной из которых, является Autoruns.exe, обладающей более широким спектром возможностей, чем служебная программа MSConfig, входящая в состав Windows.

Использование специальных утилит для работы с реестром сторонних производителей - student2.ru

Инсталляция не требуется. Просто скачайте Autoruns, разархивируйте его и запустите файл Autoruns.exe (autorunsc.exe - консольная версия). Программа покажет, какие приложения настроены на автоматический запуск, а также представит полный список разделов реестра и каталогов файловой системы, которые могут использоваться для задания автоматического запуска. Элементы, которые показывает программа Autoruns, принадлежат к нескольким категориям: объекты, автоматически запускаемые при входе в систему, дополнительные компоненты проводника, дополнительные компоненты Internet Explorer (включая объекты модулей поддержки обозревателя (BHO)), библиотеки DLL инициализации приложений, подмены элементов, объекты, исполняемые на ранних стадиях загрузки, библиотеки DLL уведомлений Winlogon, службы Windows и многоуровневые поставщики услуг Winsock.
Чтобы просмотреть автоматически запускаемые объекты требуемой категории, достаточно выбрать нужную вкладку.

Для поиска записей в реестре, относящихся к выбранному объекту достаточно использовать пункт "Jump to" контекстного меню, вызываемого правой кнопкой мыши. Произойдет запуск редактора реестра и откроется ключ, обеспечивающий его запуск.


Драйверы и службы.

Информация о драйверах и системных службах (сервисах) находится в разделе
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services.
Каждому драйверу или сервису соответствует свой раздел. Например, "atapi" - для драйвера стандартного IDE контроллера жестких дисков, "DNScache" - для службы "DNS клиент". Назначение основных ключей:
DisplayName - выводимое имя - то что вы видите в качестве осмысленного названия при использовании, например, элементов панели управления.

ErrorControl - режим обработки ошибок.
0 - игнорировать (Ignore) при ошибке загрузки или инициализации драйвера не выдается сообщение об ошибке и система продолжает работу.
1 - нормальный (Normal) режим обработки ошибки. Работа системы продолжается после вывода сообщения об ошибке. Параметры ErrorControl для большинства драйверов устройств и системных служб равна 1.
2 - особый (Severe) режим. Используется для обеспечения загрузки последней удачной конфигурации (LastKnownGood).
3 - критическая (Critical) ошибка. Процесс загрузки останавливается, и выводится сообщение о сбое.

Group - название группы, к которой относится драйвер, например - "Видеоадаптеры"

ImagePath путь и имя исполняемого драйвера. Файлы драйверов обычно имеют расширение .sys и располагаются в папке \Windows\System32\DRIVERS\. Файлы сервисов - обычно .exe и располагаются в \Windows\System32\.

Start управление загрузкой и инициализацией. Определяет, на каком этапе загрузки системы производится загрузка и инициализация данного драйвера или службы. Значения Start:
0 - BOOT - драйвер загружается загрузчиком.
1 - SYSTEM - драйвер загружается в процессе инициализации ядра.
2 - AUTO - служба запускается автоматически при загрузке системы.
3 - MANUAL - служба запускается вручную.
4 - DISABLE - отключено.
Загрузка драйверов и запуск служб с параметрами Start от 0 до 2 выполняются до регистрации пользователя в системе. Для отключения драйвера или службы достаточно установить значение Start равным 4. Отключение драйверов и служб через редактирование этого ключа реестра - довольно опасная операция. Если вы случайно или по незнанию отключите драйвер или сервис, без которых невозможна загрузка или работа - получите аварийное завершение системы (чаще всего - синий экран смерти BSOD).


Драйверы и службы для безопасного режима.

При загрузке операционной системы для инициализации драйверов и служб используется набор управляющих параметров из раздела текущей конфигурации
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet.При возникновении проблем с работой операционной системы нередко используется безопасный режим загрузки (Safe Mode). Отличие данного режима от обычной загрузки, заключается в том, что используется минимально необходимая конфигурация драйверов и системных служб, перечень которых задается разделом:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot
Подразделы:
Minimal - список драйверов и служб, запускаемых в безопасном режиме (Safe Mode)
Network - то же, но с поддержкой сети.

Кроме раздела HKLM\SYSTEM\CurrentControlSet, в реестре присутствуют и
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet001
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet002
По своей структуре они идентичны HKLM\SYSTEM\CurrentControlSet, и предназначены для дополнительной возможности восстановления работоспособности системы с использованием загрузки последней удачной конфигурации системы (Last Known Good Configuration). Возможные варианты загрузки управляющих наборов определяются содержимым раздела:
HKEY_LOCAL_MACHINE\SYSTEM\Select

Использование специальных утилит для работы с реестром сторонних производителей - student2.ru

Current - управляющий набор, который был использован для текущей загрузки.
Default - управляющий набор, который будет использоваться при следующей загрузке.
LastKnownGood - управляющий набор, который будет использоваться, если будет выбран режим загрузки последней удачной конфигурации (Last Known Good Configuration).
Failed - сбойный управляющий набор, который будет создан, если будет выбран режим загрузки последней удачной конфигурации (Last Known Good Configuration).
После успешной загрузки и входа пользователя в систему, данные из CurrentControlSet и ControlSet001 копируются в ControlSet002. При изменении конфигурации, данные записываются в CurrentControlSet и ControlSet001. Если изменение настроек привело к краху системы, имеется возможность ее восстановления при использовании варианта последней успешной загрузки, берущей данные из ControlSet002. После удачной загрузки в этом режиме, появится новый подраздел с управляющим набором, ControlSet003, - на тот случай, если вам снова понадобится использовать Last Known Good Configuration. При каждом использовании загрузки последней удачной конфигурации значение ControlSet00x будет увеличиваться.

Наши рекомендации