Задачи и инструменты реестра

Итак, мы окончили знакомство с основами реестра. По-настоящему интересно становится, когда вы узнаете, какие инструменты можно использовать в реестре и что с ними можно делать.
Поиск в реестре
У редактора реестра есть простая функция поиска, позволяющая искать текст во всех разделах и значениях. Просто выберите Найти в меню Правка редактора реестра, напечатайте требуемый текст и нажмите кнопку Найти далее.
Поиск в редакторе реестра не всегда хорошо работает. Он очень медленный и не сохраняет историю предыдущих поисков. Но его самый большой недостаток в том, что вы можете найти только одно совпадение за один раз. Приходится постоянно нажимать Найти далее, чтобы просмотреть другие результаты. А если вы случайно щелкнули пару раз на Найти далее, то обратного пути уже нет. И наконец, не существует способа выполнить поиск и замену, но об этом поговорим позже.
Нажмите Ctrl+F или выберите меню Правка Найти, чтобы начать поиск в текущем разделе.
В окне поиска убедитесь, что все три параметра в разделе Просматривать при поиске - Имена разделов, Имена параметров и Значения параметров - были выбраны. Параметр Искать только строку целиком должен быть выключен, если, конечно, вы не ищете текст, который может появляться в других словах. Поиск слова handle найдет PersistentHandler и TeachAndlearn.
Вам, возможно, придется научиться некоторым уловкам, чтобы найти в реестре:
Пункты контекстных меню
Пункты контекстных меню обычно хранятся в ветви HKEY_CLASSES_ROOT. При поиске любого из пунктов меню помните, что они содержат подчеркнутые символы для обозначения клавиши быстрого доступа, хотя Windows7 и не отображает их по умолчанию. Например, меню Datasheet хранится в реестре как Data&sheet. Знак & в Data&sheet дает указание системе Windows подчеркнуть символ, следующий за ним, то есть в строку поиска необходимо включить символ &. Если этого не сделать, поиск вам не поможет.
Поиск текста не зависит от регистра, поэтому не нужно беспокоиться о выделении прописными буквами.
Имена файла и папки
Несмотря на то что длинные имена файлов широко использовались на компьютерах больше десятилетия до появления Windows7, короткие имена файлов все еще имеют значение в современной Windows, особенно в реестре. Например, путь папки C:\Program Files в короткой форме 8.3 будет выглядеть как C:\PROGRA~l. Даже Microsoft все еще продолжает использовать короткие имена файлов. Так, при установке Office 2007 в реестре появляется значение C:\PROGRA~l\MICROS~2\ Officel2\1033\ACCESS12.ACC.
К сожалению, это означает, что необходимо искать и длинную и короткую версии имени файла или папки, если вы хотите найти их все. Предположим, что вы хотите переместить папку Program Files с одного диска на другой. Настройки путей к этой папке могут храниться в реестре как C:\Program Files или как C:\Progra~l. Убедитесь, что вы ищете оба варианта.
При поиске Program Files и Progra~l достаточно ввести progra, и вы найдете оба варианта. Учтите, что поиск начнет натыкаться на другие упоминания слова program, поэтому попробуйте ограничить результаты, добавив обратную косую черту перед текстом.
DLL, классы, компоненты, расширения и CLSIDs
Windows и все приложения состоят из маленьких строительных кубиков, которые называют классами, расширениями или объектами. Я избавлю вас от рассуждений по поводу СОМ - компонентов, архитектуры.NET и от других жаргонных слов. Достаточно сказать, что большинство этих кубиков зарегистрированы в ветви реестра HKEY_CLASSES_ROOT\CLSlD и распознаются по шестнадцатеричному коду CLSID.
Почему это важно? Это означает, что можно проследить, где класс упоминается и где он зарегистрирован. Все это можно сделать, исследовав реестр на идентификатор класса.
Например, данные конфигурирования для вышеуказанного класса находятся в
HKEY_CLASSE5_ROOT\CLSID\
Если компонент не работает, то можно попробовать устранить или диагностировать проблему, изменив значения в этом разделе. Если удалить этот раздел, произойдет отказ регистрации класса. Чтобы отключить поддержку «сжатых папок», необходимо удалить две ветви идентификатора класса.