Назад | Перейти на главную страницу

Сравнение наборов DLL из одного и того же приложения на двух разных машинах

Есть ли хороший способ сравнить библиотеки DLL, загруженные между двумя машинами, на которых запущено одно и то же приложение. (И чтобы воспроизвести процесс между N другими машинами, двумя за раз?)

Справочная информация: я пытаюсь отследить проблему с конфигурацией / настройкой. Это давняя проблема типа DLL-ада, когда приложение запускается на одной машине, но не на другой.

Я исключил наш установщик как проблему; он стабилен, но есть различия между целевыми системами. Различные варианты Windows, версии MDAC и т. Д.

Я пробовал: экспортировать снимки EXE с помощью Proc Explorer в файл с разделителями и использовать Excel для сравнения. Но это очень трудоемко и подвержено ошибкам. (Я не исключаю возможности Excel, просто я не знаю достаточно трюков, чтобы использовать его в своих целях.)

(Изначально я разместил этот вопрос на StackOverflow, но это привело к перекати-поле. Надеюсь на удачу здесь. Спасибо!)

У меня нет времени писать для вас весь сценарий, но вы можете позвонить handle.exe -p process_name.exe, grep для DLL, о которых вы заботитесь (возможно, всех), а затем запустите sigcheck против каждого из них. Sigcheck имеет различные параметры, включая хеширование файлов, если вы не можете полагаться на информацию о сообщаемой версии.

handle и sigcheck также взяты из SysInternals.