Ответы:
Запустите установщик и просмотрите его с помощью Sysinternals Process Monitor . Вы можете фильтровать данные так, чтобы отображались только операции, выполненные установщиком. Вы даже можете отфильтровать все операции, которые хотите увидеть (RegWrite, RegQueryValue и т. Д.), И сохранить запись для последующего просмотра.
Монитор процесса является бесплатным.
Вы также можете использовать WinDiff . Вы можете сохранить экспортированные файлы реестра, а затем сравнить их:
WinDiff является бесплатным и открытым исходным кодом.
Еще одно бесплатное решение для сравнения реальных экспортируемых файлов реестра - это RegShot .
RegShot - это небольшая утилита сравнения реестра, которая позволяет быстро сделать снимок реестра, а затем сравнить его со вторым снимком, выполненным после внесения изменений в систему или установки нового программного продукта . Отчет об изменениях может быть создан в текстовом или HTML-формате и содержит список всех изменений, которые произошли между snapshot1 и snapshot2. Кроме того, вы также можете указать папки (с дополнительными папками), которые также будут проверяться на наличие изменений.
.reg
файлы, WinMerge работает для этого лучше и может даже различать их лучше, чем Windiff. Тем не менее, я обычно использую этот метод для быстрого и грязного анализа (даже при том, что он обычно оказывается большей работой).
если у вас есть Total Commander , это довольно просто:
экспортировать реестр перед установкой и после установки (сохранить с тем же именем в разных папках)
откройте обе папки в Total Commander, выделите файл с одной стороны, перейдите в « Файлы» > « Сравнить по содержимому» ... voilá:
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
Я использую WinMerge, но я создал приложение для преобразования файлов исправлений WinMerge в формат .reg. Он отлично работает для приложений, не относящихся к M $, но поскольку WinMerge не поддерживает HK в сгенерированных файлах исправлений, в основном только для установки / удаления. В частности, у меня было одно приложение, которое я не смог установить на x64 Win7, но я знал, что оно работает. Я экспортировал весь рег в файл1, установил, экспортировал весь измененный рег в файл2. Сделайте патч для сравнения с WinMerge, а затем используйте мое приложение для очистки всего ненужного контента.
Я хотел сравнить реальные ульи и не экспортируемые файлы и иметь возможность легко копировать между ними.
Я пытался:
Итак, вот шаги, которые я использовал в деталях. Предположим, что я хочу скопировать элементы из реестра в разделе D (hive SOFTWARE) в раздел реестра E (hive SOFTWARE) при запуске из раздела C.