Как сделать снимок реестра и сравнить

Обновлено: 06.07.2024

Windows не имеет встроенного инструмента мониторинга реестра. Но вы можете использовать программу командной строки Windows File Compare или fc.exe , чтобы сравнить два файла экспорта реестра и, таким образом, отслеживать изменения реестра Windows. Вы также можете использовать некоторые бесплатные программы для отслеживания изменений в реестре в вашей системе Windows 10/8/7.

Отслеживать изменения в реестре

Сравнение файлов fc.exe

Чтобы использовать эту программу сравнения файлов или fc.exe, сначала экспортируйте файл .reg и назовите его, например, rega .

После того, как изменение произойдет, экспортируйте измененный файл .reg и назовите его, скажем, regb .

Теперь откройте командную строку и введите:

Поскольку для файлов .reg используется Unicode, переключатель /u указывает fc.exe использовать Unicode.

Теперь вы можете проверить вывод regcompare в Блокноте.

WhatChanged

Вы также можете попробовать эту стороннюю утилиту WhatChanged , чтобы легко отслеживать изменения в реестре Windows 10/8/7.


Просто скачайте это переносное приложение и запустите его до и после изменений.

Sysinternals Process Monitor

Sysinternals Process Monitor – отличное бесплатное программное обеспечение для мониторинга изменений реестра в режиме реального времени. Process Monitor – это расширенный инструмент мониторинга для Windows, который в режиме реального времени показывает файловую систему, реестр и активность процессов/потоков. Он сочетает в себе функции двух устаревших утилит Sysinternals, Filemon и Regmon, и добавляет обширный список улучшений, включая расширенную и неразрушающую фильтрацию, всесторонние свойства событий, такие как идентификаторы сеансов и имена пользователей, надежную информацию о процессах, полные потоки стека с интегрированной поддержкой символов для каждой операции одновременное ведение журнала в файл и многое другое.

RegShot

RegShot – еще одна небольшая утилита сравнения реестра, которая позволяет быстро сделать снимок реестра и сравнить его со вторым. сделано после внесения системных изменений или установки нового программного продукта. Отчет об изменениях может быть создан в текстовом или HTML-формате и содержит список всех изменений, которые произошли между моментальными снимками1 и моментальными снимками2. Получи это здесь.

Существуют и другие инструменты, которые могут помочь вам отслеживать изменения в реестре Windows; они:

Р еестр Windows является, пожалуй, самым динамичным компонентом операционной системы. В нём отражаются любые, даже самые незначительные изменения, вносимые в систему штатными и сторонними программами. Опытные пользователи могут отслеживать подобные изменения, применяя для этих целей специальные утилиты, об одной из которых сегодня пойдёт речь. Называется она RegFromApp. Эта небольшая портативная утилита от Nirsoft позволяет производить наблюдение за работой установленных на компьютере программ.

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

П римечание: для отслеживания работы 32-битных программ нужно использовать 32-разрядную версию RegFromApp, даже на 64-битной системе.

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

RegFromApp

RegFromApp

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

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

Запустите установщик и просмотрите его с помощью Sysinternals Process Monitor . Вы можете фильтровать данные так, чтобы отображались только операции, выполненные установщиком. Вы даже можете отфильтровать все операции, которые хотите увидеть (RegWrite, RegQueryValue и т. Д.), И сохранить запись для последующего просмотра.

альтернативный текст

Монитор процесса является бесплатным.

Вы также можете использовать WinDiff . Вы можете сохранить экспортированные файлы реестра, а затем сравнить их:

альтернативный текст

WinDiff является бесплатным и открытым исходным кодом.

Еще одно бесплатное решение для сравнения реальных экспортируемых файлов реестра - это RegShot .

RegShot - это небольшая утилита сравнения реестра, которая позволяет быстро сделать снимок реестра, а затем сравнить его со вторым снимком, выполненным после внесения изменений в систему или установки нового программного продукта . Отчет об изменениях может быть создан в текстовом или HTML-формате и содержит список всех изменений, которые произошли между snapshot1 и snapshot2. Кроме того, вы также можете указать папки (с дополнительными папками), которые также будут проверяться на наличие изменений.

альтернативный текст

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

Regmon / Procmon не идеален, потому что слишком много беспорядка, который необходимо отфильтровать вручную. Кроме того, Windiff не может обрабатывать гигантские .reg файлы, WinMerge работает для этого лучше и может даже различать их лучше, чем Windiff. Тем не менее, я обычно использую этот метод для быстрого и грязного анализа (даже при том, что он обычно оказывается большей работой).

если у вас есть Total Commander , это довольно просто:

экспортировать реестр перед установкой и после установки (сохранить с тем же именем в разных папках)

введите описание изображения здесь

Total Commander является условно-бесплатной, попробуйте, прежде чем купить.

Если вы хотите сравнить два файла реестра (которые вы экспортировали вручную в текст), то существует множество приложений для сравнения, таких как WinMerge , WinDiff и т. Д.

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

Если вы хотите сравнить реестр до и после установки, вы также можете использовать монитор установки. Опять же, их много, но одним из основных является InCtrl5 журнала PC Magazine (вам, возможно, придется заплатить, чтобы загрузить его со своего сайта, хотя сама программа бесплатна, поэтому есть много сайтов, у которых она есть). Они выпустили обновление под названием InCtrlX, которое, по-видимому, лучше. Total Uninstall является хорошим коммерческим. Мне обычно нравится моя старая копия InCtrl5, но Z-Soft Uninstaller имеет ту же функцию и является исключительной (это лучшее из десятка или около того, что я пробовал); плюс это бесплатно.

Другим решением является анализ самого установщика . То есть загляните внутрь EXE / MSI / BAT / INF / и т.д. файл, чтобы увидеть, что именно он делает при установке, включая изменения в файлах, записях реестра, службах, драйверах и т. д. Таким образом, вы можете избежать всего процесса обнаружения в целом. Я считаю, что 7Zip - лучший способ заглянуть внутрь большинства исполняемых инсталляторов (таких как NSIS), потому что вы можете видеть файлы и скрипты и тому подобное. Для установщиков MSI я предлагаю либо собственный ORCA от Microsoft, либо InstEd . Хороший коммерческий инструмент для MSI - AdvancedInstaller

@NicolasRaoul, кроме мощности процессора системы, сравнение также сильно зависит от разницы. Я сравнил текстовые файлы размером более 100 МБ +, которые всего лишь несколько раз отличались за несколько секунд с файлами WinDiff, и файлы размером 100 КБ, которые сильно отличались по времени работы с WinMerge (я обычно заканчиваю тем, что убивал процесс задолго до этого).

Я использую WinMerge, но я создал приложение для преобразования файлов исправлений WinMerge в формат .reg. Он отлично работает для приложений, не относящихся к M $, но поскольку WinMerge не поддерживает HK в сгенерированных файлах исправлений, в основном только для установки / удаления. В частности, у меня было одно приложение, которое я не смог установить на x64 Win7, но я знал, что оно работает. Я экспортировал весь рег в файл1, установил, экспортировал весь измененный рег в файл2. Сделайте патч для сравнения с WinMerge, а затем используйте мое приложение для очистки всего ненужного контента.

Время от времени у пользователей и системных администраторов может возникать необходимость посмотреть изменения в реестре Windows за определенный период. Это может быть вызвано желанием посмотреть, какие изменения вносят определенная программа или действия пользователей.

Посмотреть изменения, внесённые в реестр Windows, можно как встроенными в операционную систему средствами, так и при помощи стороннего ПО. Начнём с первых.

Экспортируем предварительно весь реестр или только нужную нам ветку. Допустим, у нас есть два файла: 1.reg и 2.reg, которые мы положили на диск C. Тогда для их сравнения можно использовать команду

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

Как посмотреть изменения в реестре Windows

Выше я использовал MS Word и формат .doc.

Проблема использования fc.exe кроется в том, что результат её работы является малочитаемым. Скриншот выше говорит о том, что в ветку HKEY_LOCAL_MACHINE\SOFTWARE\Test был добавлен параметр Primer. Но вряд ли получится это понять, если не знать об этом заранее. Полноценным инструментом анализа fc.exe не назовешь. Эта утилита больше подходит, когда вы сами вносите изменения в реестр, и хотите убедиться, что они были внесены (но не хотите бродить по веткам реестра в regedit).

Поэтому перейдем к другой утилите, которая, к сожалению, уже не входит в состав современных версий Windows, но может быть добавлена. Называется она WinDiff. Добавить её можно через установку пакетов Microsoft Windows SDK. К сожалению, после Windows 7 WinDiff исключили и из этих пакетов, но скачать её можно и отдельно, например, по этой ссылке.

Чтобы использовать утилиту WinDiff из командной строки Windows, поместите её в каталог %WINDIR%\System32. Теперь для сравнения двух файлов реестра из примера нам достаточно ввести команду

Как посмотреть изменения в реестре Windows

Откроется графический интерфейс утилиты, который можно видеть на скриншоте выше. Разберемся, как читать вывод программы WinDiff.

  • Строки на белом фоне означают совпадение содержимого файлов;
  • Строки на красном фоне показывают содержимое первого (левого) файла, которого нет во втором (правом);
  • Строки на желтом фоне показывают содержимое второго (правого) файла, которого нет в первом (левом).

Перейдем к сторонним утилитам мониторинга реестра.

Популярным бесплатным решением является программа Regshot. Программа тоже работает со снимками реестра, причем делает их сама, а не анализирует заранее сохраненные файлы. В этом её минус. А плюс в том, что она очень проста.

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

Как посмотреть изменения в реестре Windows

Некоторое время уйдёт на этот процесс. Далее проводим операции с компьютером, которые хотим зафиксировать, и делаем второй снимок.

Как посмотреть изменения в реестре Windows

После чего их можно сравнить.

Как посмотреть изменения в реестре Windows

Как посмотреть изменения в реестре Windows

Последним рассматриваемым в этой статье средством мониторинга реестра Windows будет программа Registry Live Watch. Пожалуй, уже из названия можно понять, что данная программа способна следить за изменением реестра в реальном времени.

Программа тоже крайне проста и, по сути, даже не имеет толком настроек. Вы лишь указываете ветку реестра, за которой требуется следить, и запускаете мониторинг кнопкой Start Monitor.

Как посмотреть изменения в реестре Windows

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

Читайте также: