icemanpro
V2EX  ›  问与答

如何找到是哪个模块调用了动态库?

By icemanpro at 2021 年 10 月 14 日 · 1982 次点击
程序启动时就提示找不到 dll 文件,调试时,发现是在进 main()之前就弹出提示。因引用了多个第三方程序,现有什么好办法能找到是哪里调用了这个动态库?
3 条回复  •  2021-10-14 11:36:02 +08:00
ch2
   1
ch2  
   2021 年 10 月 14 日
二分查找,每次注释掉一半
Ediacaran
   2
Ediacaran  
   2021 年 10 月 14 日 via iPhone
直接搜索被调用的 dll 名称文本
xyx0826
   3
xyx0826  
   2021 年 10 月 14 日 via iPhone   ❤️ 1
用 Dependency Walker 查看程序及其所有 DLL 的依赖。假如是运行时而不是 main 前发生的错误的话,可以用 API Monitor 监控 LoadLibrary API 调用。
© 2026 V2EX · 24ms · 3.9.8.5