使用Dependency Walker对模块进行故障排除
Dependency Walker遞歸掃描特定應用程序所需的所有相關模塊。在此掃描期間,它執行以下任務:
? ? 1、檢測丟失的文件。這些是作為另一個模塊的依賴項所必需的文件。此問題的錯誤信息是“無法在指定的路徑中找到動態鏈接庫BAR.DLL ...”。
? ? 2、檢測無效文件。這包括不符合Win32或Win64的文件以及損壞的文件。此問題的錯誤信息是“應用程序或DLL BAR.EXE不是有效的Windows映像”。
? ? 3、檢測導入/導出不匹配。驗證模塊導入的所有函數是否從依賴模塊導出。所有無法解析的導入函數都被標記有錯誤。此問題的錯誤信息是“無法定位程序入口點FOO于動態鏈接庫BAR.DLL中”。
? ? 4、檢測循環依賴性錯誤。這是一個非常罕見的錯誤,但可能會發生。
? ? 5、檢測不匹配的CPU類型的模塊。如果為一個CPU類型構建的模塊嘗試加載為不同CPU類型構建的模塊,則會發生這種情況。
? ? 6、通過驗證模塊校驗和,來檢查校驗和不一致性,以查看在構建模塊之后是否已修改任何模塊。
? ? 7、通過突出顯示無法在其首選基址加載的任何模塊來檢測模塊沖突。
? ? 8、通過跟蹤對模塊入口點的調用并查找錯誤來檢測模塊初始化失敗。
? ? 9、Dependency Walker還可以執行應用程序的運行時配置文件,以檢測動態加載的模塊和模塊初始化失敗。以上方法也適用于動態加載的情況。
總結
以上是生活随笔為你收集整理的使用Dependency Walker对模块进行故障排除的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 大数据集群搭建之Linux的安装(一)
- 下一篇: SPI协议简单介绍