Advanced Registry Tracer 1.60

Автор: J-34
Дата: 23.10.2002
Все фото статьи

Введение


Программа Advanced Registry Tracer (сокращенно - ART, раньше программа называлась RegFix) предназначена для анализа изменений в системном реестре Windows путем сравнения двух копий реестра в разное время. Создаются и сравниваются копии реестра, хранящиеся в своем собственном формате, поэтому называть их именно копиями, на мой взгляд, не совсем корректно, и далее я буду называть их "слепками" реестра. ART показывает все новые, удаленные или измененные ключи, также можно создавать REG-файлы для отката или повторения аналогичных обнаруженным изменений реестра.

Программа не поддерживает операции по сравнению разных версий файлов и не производит поиск новых и изменившихся файлов. Для этих целей вы можете использовать файловые мониторы, например, Adinf, KAV Inspector и другие.

Краткие возможности программы


Сканирование реестра в файл с возможностью просмотра и поиска.

Сканирование реестра на удаленном компьютере.

Сравнение различных слепков реестра.

Сравнение отдельных ветвей различных слепков реестра.

Функции отмены и повтора внесенных изменений.

Сохранение любого ключа реестра в REG-файл

Использование закладок.

Открытие выбранных ключей в редакторе реестра RegEdit.

Поддержка параметров командной строки.

Добавление комментариев к каждому слепку реестра.

Сканирование реестра


Прежде всего, необходимо создать первоначальный слепок реестра. Когда вы запускаете ART в первый раз, программа сканирует реестр, создает первоначальный слепок реестра и автоматически записывает его под именем ART_DB.rgf.

Для самостоятельного создания слепка реестра вы можете воспользоваться пунктом New меню File и просканировать состояние реестра в данный момент выбором пункта Scan меню Registry или нажав на кнопку Scan Registry (Сканировать реестр) на панели инструментов. Еще одной возможностью создания нового слепка реестра является его экспорт из REG-файла. Результат сканирования также может быть загружен при открытии сохраненного слепка реестра.

Каждый новый слепок реестра сохраняется в файл автоматически. Одновременно в памяти могут находиться два слепка реестра, называемых активными. Они обозначены желтым цветом, в противовес неактивным, обозначенным белым. Для неактивных слепков доступен единственный пункт контекстного меню с возможностью добавления комментария. Если вы хотите просмотреть, сравнить или осуществить поиск в сохраненном слепке реестра, для этого вам необходимо его открыть, т.е. загрузить в память. Если в память уже загружены два слепка реестра, то при попытке открыть еще один слепок, или создать при сканировании новый, программа, согласно заданным установкам, закрывает один из открытых слепков, или предлагает пользователю самому сделать выбор или отменить операцию.

В зависимости от размера реестра и мощности компьютера, процедура сканирования может занимать от нескольких секунд до минуты (на 486-ых компьютерах). Продолжительность сканирования реестра (в секундах) отображается в статусной строке после сканирования.

Сравнение различных состояний реестра


ART позволяет сравнивать следующие объекты:

два целых слепка реестра (за исключением ветви HKEY_DYN_DATA);
две одинаковых ветви реестра из различных слепков;
две различных ветви реестра из одного и того же или разных слепков реестра;
различные ветви из существующих слепков реестра, и эти же ветви в реестре на данный момент.

В отличие от программ мониторинга реестра типа RegMon или Win-Expose Registry, а также деинсталляторов типа CleenSweep, ART сравнивает именно слепки реестра, а не следит за ключами, к которым обращаются программы. Таким образом, ART выявляет все изменения в реестре (кроме ветви HKEY_DYN_DATA) и к тому же не занимает системных ресурсов.

ART хранит все слепки реестра в одной базе данных, в которой может находиться до 100 слепков реестра, сделанных в разное время (разработчики тестировали программу с 50-ю слепками). База данных имеет расширение ".RDF", что означает аббревиатуру Registry Database File (Файл базы данных реестра). В ней могут выполняться такие операции, как поиск и сравнение.

ART ищет изменения в реестре на всех уровнях: в названиях ключей, названиях строковых или двоичных данных и в самих данных. Результат сравнения показывается в виде трех деревьев - по одному для новых, удаленных и измененных данных.

Добавленные и удаленные данные показываются аналогично редактору реестра, измененные данные показаны в виде дублированного списка со старыми и новыми значениями.

Все изменения в структуре реестра, а также изменения в комментариях к ним автоматически сохраняются в базе данных, поэтому в меню File нет пункта Save (Сохранить). При автоматическом сохранении слепок получает имя, состоящее из даты и времени сохранения.

Базируясь на результатах сравнения при помощи ART можно создавать файлы отката (Undo) и повторного выполнения сделанных изменений (Redo) в формате REG. Эти файлы могут быть использованы для изменения значений реестра и перехода от новых версий реестра к более ранним версиям, и наоборот.
ART проверяет только ветви реестра HKEY_LOCAL_MACHINE и HKEY_USERS, так как:

ветвь HKEY_CURRENT_CONFIG является копией ветви HKEY_LOCAL_MACHINE\Config\000x,

HKEY_CLASSES_ROOT - копия ветви HKEY_LOCAL_MACHINE\Software\Classes,

HKEY_CURRENT_USER - часть HKEY_USERS,

а ветвь HKEY_DYN_DATA обычно используется только системой, что, по мнению автора программы, не должно быть интересно пользователю.

Интерфейс программы


Меню File (Файл) для работы с файлами базы данных и экспортом/импортом REG-файлов.

New - создание нового файла базы данных со слепками реестра.
Open - открыть существующую базу данных со слепками реестра.
Reopen - открыть ранее открывавшуюся базу данных, при этом в этом пункте доступен список из ранее открывавшихся баз данных.
Save As - сохранение базы данных в другом файле. По умолчанию файл с базой данных находится в папке с программой и называется ART_DB.rgf.
Close - закрыть файл с базой данных.
Export to REG file - экспорт выбранной части реестра в REG-файл.
Import from REG file - импорт значений REG-файла в слепок реестра.
Exit - выход из программы.

Меню Edit (Редактировать) для редактирования REG-файлов и реестра.

Edit REG file - открыть в установленном редакторе REG-файл. По умолчанию редактором для REG-файлов является Блокнот, его можно поменять в настройках.
Jump to Regedit - открыть выбранный ключ в редакторе реестра Regedit.

Меню Tree (Дерево) для навигации в древовидной структуре слепков реестра.

Expand - раскрыть ветви дерева реестра, находящиеся в данном ключе.
Collapse - закрыть ветви дерева реестра в данном ключе.
Collapse all - закрыть все ветви дерева реестра в данном ключе.
Goto the same key - перейти к такому же ключу в другом слепке реестре.
Switching mode - настройка режима переключения при выборе перехода к другому ключу: переход осуществляется между двумя активными или двумя выбранными пользователем слепками реестра.

Меню Registry (Реестр) для работы с реестром.

Scan Registry - создание слепка реестра путем его сканирования.
Scan Remote Registry - создание слепка путем сканирования реестра на удаленном компьютере.
Find - поиск в слепке реестра заданного значения.

Compare From Here - сравнить два слепка реестра начиная с указанного места.
Compare 2 chosen keys - сравнение двух выбранных ключей.
Compare with current registry - сравнение слепка реестра с содержимым реестра на данный момент.
Bookmarks - вызов закладок. Этот пункт меню в зависимости от установок программы может меняться на пункт Exclude From Comparison (Исключить из сравнения). Для исключения из сравнения отдельных отдельных ключей в программе существует список исключений, который также может выполнять роль списка закладок, в зависимости от установок программы.

Expand Marked Keys - раскрытие всех помеченных ключей.
UnMark All Subkeys - снятие пометок со всех ключей, размещенных в заданном ключе.

При нажатии правой кнопки мыши доступно контекстное меню.

Copy Path - копировать путь к выбранному ключу в буфер обмена.
Properties - просмотр свойств выбранного ключа.

Compare here - начать сравнение двух слепков реестра с выбранного ключа.
Compare 2 chosen keys - сравнить два выбранных ключа.
Compare with current registry - сравнить два активных слепка реестра.
Mark key (check) - пометить выбранный ключ.
UnMark All Subkeys - снять пометку со всех вложенных ключей в данном ключе.
Jump to Regedit - открыть выбранный ключ в редакторе реестра Regedit.
UpOneLevel - перейти на один уровень вверх по дереву реестра.
Expand - раскрыть все ветви дерева реестра, находящиеся в данном ключе.
Collapse - закрыть все ветви дерева реестра в данном ключе.
Goto the same key - перейти к такому же ключу в другом реестре.

Контекстное меню для корня реестра немного отличается. Помимо того, что в нем не активна примерно половина пунктов меню и отсутствует Copy Path, наличествует 2 новых пункта:

Delete - удалить данный слепок реестра.
Comment - добавить/редактировать к данному слепку реестра комментарий длиной до 2000 символов. По умолчанию все слепки реестра уже имеют комментарий с именем компьютера.

Как мы видим, в контекстные меню вошли наиболее часто используемые пункты различных меню программы.

Полезной возможностью ART является экспорт выбранной части реестра, начиная с одного ключа и заканчивая целой ветвью. Впоследствии вы можете использовать полученный REG-файл для изменения системного реестра, в том числе и на других компьютерах. Вы можете просмотреть этот файл в указанном вами в свойствах программы текстовом редакторе (по умолчанию им является Блокнот) нажав на кнопку Edit REG file (Редактировать REG-файл) на панели инструментов, или выбрав тот же пункт в меню Edit (Редактировать).

Параметры командной строки


ART поддерживает работу из командной строки. На данный момент из командной строки возможно только сканирование реестра.
art/<команда> <RGF-файл>.rgf {-o|-a}[-b][-m:\\<remote machine>][-l:<файл отчета>]
Команды:

s - Сканирование реестра. RGF-файл может быть как новым файлом, так и уже содержащим слепки реестра.

Ключи:

-o - перезаписать RGF-файл, если он существует
-а - добавить запись в конец RGF-файла, если он существует
-b - если RGF-файл существует, замещать его, оставляя копию в BAK-файле
-m - сканировать реестр на удаленном компьютере с названием "remote machine".
-l - если при выполнении операции возникнет ошибка, то она сохраняется в файле отчета

Особенности работы под под Windows 2000/NT/XP


При работе под Windows 2000/NT/XP некоторые ключи изначально (по умолчанию) недоступны для чтения или изменения даже с привилегией администратора. Для изменения прав доступа для отдельных ключей реестра используйте Regedt32 (у вас должны быть соответствующие полномочия). С недоступными для изменения ключами функции Undo/Redo не работают. При невозможности прочитать значения ключей ART выдает соответствующие сообщения.

В таких случаях удобно использовать файл отчета, в который будут записываться все подобные сообщения (вместо того, чтобы выдаваться на экран), т.к. их может быть довольно много.

Для примера приведу подобный файл отчета: ссылка

Что нового в версии 1.60


Основным изменением является возможность импорта REG-файла в слепок реестра, при этом поддерживается импорт форматов как regedit 4, так и regedit 5 (Windows 2000).

Остальные изменения:

Выбор формата экспорта в REG файл (regedit 4, так и regedit 5).

Значительно улучшилась читабельность и функциональность созданных при помощи функций Undo/Redo REG-файлов.

За счет использования недокументированных возможностей формата REG-файлов исключена генерация INF-файлов.

Теперь возможно сканирование не только всего реестра, но и любой его части.

В пункте меню Find добавлено открытие ключа по пути (Find Path).

Поддержка стилей XP.

Небольшие изменения в дизайне, улучшены удобства интерфейса некоторых окон.

Исправленные ошибки:

Сканирование в режиме командной строки вызывало ошибку.

После закрытия слепков реестра оставался видимым один корень слепка реестра.

В списке исключений при добавлении пути некорректно определялась подстрока.

Белая иконка главного слепка реестра (если он один), а также невозможность его открытия.

В очень редких случаях после сканирования возникал пустой экран.

Заключение


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

Программа работает под Windows 95/98/Me/NT/2000/XP и распространяется по принципам Shareware. Стоимость однопользовательской лицензии - 40$.

Advanced Registry Tracer 1.60 (размер 990Kb): линк