Как использовать Dependency Walker в системах Windows

How Use Dependency Walker Windows Systems



Dependency Walker — бесплатная утилита, которая сканирует любой 32-битный или 64-битный модуль Windows (exe, dll, ocx, sys и т. д.) и строит иерархическое дерево всех зависимых модулей. Для каждого найденного модуля в нем перечислены все функции, которые экспортируются этим модулем, и какие из этих функций на самом деле вызываются другими модулями. Dependency Walker также очень полезен для устранения системных ошибок, связанных с загрузкой и выполнением модулей. Чтобы использовать Dependency Walker, просто запустите исполняемый файл Depends.exe. По умолчанию он будет сканировать модуль, который в данный момент выполняется в вашем процессе. Однако вы также можете использовать меню «Файл», чтобы открыть любой другой модуль в вашей системе. После загрузки модуля Dependency Walker перечислит все его зависимости и отобразит их в виде дерева слева. На правой панели отобразятся все функции, экспортированные выбранным модулем. Если вы выберете функцию на правой панели, Dependency Walker выделит все модули в древовидном представлении, которые вызывают эту функцию. Это может быть очень полезно для выяснения того, какие модули используют ту или иную функцию. Dependency Walker также можно использовать для создания подробного журнала всех зависимостей для конкретного модуля. Затем этот журнал можно использовать для воспроизведения дерева зависимостей на другом компьютере. Чтобы создать журнал, просто выберите пункт меню «Файл» -> «Сохранить как» и выберите формат «Журнал Dependency Walker».



Иногда обычные шаги по устранению неполадок просто не работают. Возможно, нам придется идти все дальше и дальше — больше похоже на устранение неполадок. Сегодня я напишу об инструменте, который поможет нам в этом. Наркомания Уокер это инструмент для анализа зависимостей приложения Windows, таких как функции, модули и т. д. Он строит иерархическое дерево всех зависимых модулей exe, dll, sys и т. д.





Средство устранения неполадок с зависимостями Walker

Dependency Walker — бесплатная утилита, которая сканирует любой 32-битный или 64-битный модуль Windows (exe, dll, ocx, sys и т. д.) и строит иерархическую древовидную диаграмму всех зависимых модулей. Это может помочь вам устранить ошибки приложений, ошибки регистрации файлов, нарушения доступа к памяти и ошибки недопустимых страниц.





изображение



Dependency Walker становится особенно полезным, если ваша конкретная программа не загружается или служба не запускается из-за ошибки, указывающей на конкретную dll. В таких случаях вы можете загрузить эту программу или dll в Dependency Walker, чтобы увидеть, какой файл не загружается или какой модуль вызывает проблему, а затем исправить ее.

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

  • Обнаруживает отсутствующие файлы. Это файлы, которые требуются как зависимость от другого модуля. Симптомом этой проблемы является ошибка «Не удалось найти библиотеку динамической компоновки BAR.DLL по указанному пути...».
  • Обнаруживает недействительные файлы. Сюда входят файлы, несовместимые с Win32 или Win64, а также поврежденные файлы. Симптомом этой проблемы является ошибка «Приложение или DLL BAR.EXE не является допустимым образом Windows».
  • Обнаруживает несоответствия импорта/экспорта. Проверяет, что все функции, импортированные модулем, фактически экспортируются из зависимых модулей. Все неразрешенные функции импорта отмечены ошибкой. Симптомом этой проблемы является ошибка «Не удалось найти точку входа в процедуру FOO в библиотеке динамической компоновки BAR.DLL».
  • Обнаруживает ошибки циклической зависимости. Это очень редкая ошибка, но она может возникнуть с перенаправленными функциями.
  • Обнаруживает несоответствующие типы модулей ЦП. Это происходит, если модуль, созданный для одного процессора, пытается загрузить модуль, созданный для другого процессора.
  • Обнаруживает несоответствия контрольных сумм, проверяя контрольные суммы модулей, чтобы увидеть, не изменились ли какие-либо модули с момента их сборки.
  • Обнаруживает конфликты модулей, выделяя модули, которые не загружены по предпочтительному базовому адресу.
  • Обнаруживает сбои инициализации модуля, отслеживая обращения к точкам входа модуля и ища ошибки.
  • Dependency Walker также может профилировать среду выполнения вашего приложения для обнаружения динамически загружаемых модулей и ошибок инициализации модулей. Описанная выше проверка ошибок применяется к динамически загружаемым модулям.

Например, на днях я помогал клиентке - она ​​скачала Internet Explorer, но IE продолжал падать , без особых ошибок. Мы сделали больше всего основные способы устранения неполадок нравиться отключение дополнений и панели инструментов, сброс настроек IE по умолчанию и т. д. Но все равно он продолжал падать. Это означало, что один или несколько файлов, необходимых для правильной работы Internet Explorer, создавали проблему. Такие случаи всегда сложно устранить, но с помощью Dependency Walker мы можем увидеть, если что-то не так с одним из зависимых файлов.



Итак, я скачал Internet Explorer в Dependency Walker.

изображение

Затем я расширил список один за другим

изображение

удалить задачу клиента smb1

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

изображение

Я обнаружил, что файл IEFRAME.dll отсутствует. Я пошел и заменил файл с установочного DVD Windows. Это решило проблему. Теперь Internet Explorer больше не зависает.

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

Как использовать Dependency Walker в системах Windows

Чтобы использовать Dependency Walker для исследования ошибок, выполните следующие действия:

  1. Запустить обходчик зависимостей
  2. Нажмите «Открыть» в меню «Файл», чтобы загрузить проблемный файл.
  3. В меню «Вид» нажмите «Начать профилирование». Появится диалоговое окно модуля профиля.
  4. Введите любые переключатели, аргументы программы и другие необходимые параметры, а затем нажмите кнопку ОК.

Dependency Walker внедрит dwinject.dll до того, как произойдет ошибка, и зарегистрирует события, происходящие во время ошибки.

Зависимость Уокер скачать

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

Вы можете скачать Dependency Walker с Здесь .

Популярные посты