Dependency walker 挂起
Dependency walker hangs
我在客户端 PC 上加载 my.xll 插件时遇到问题。
它在启动时崩溃 Excel(可能是因为缺少相关的 dll)。
我知道可以在配置文件模式下使用 dependency walker 来找出 .exe 运行时加载了哪些 dll。
当我尝试 dependency walker 在分析时挂起 Excel,但我找不到原因。
在命令中 window 我 运行 这个:
C:\Program Files (x86)\Windows Kits.1\Tools\x86>start /wait depends.exe /c /f:1 /pb /pp: 1 /pg:1 /oc:d:\temp\Log.txt "C:\Program Files (x86)\Microsoft Office\Office14\excel.exe"
但是它挂了。
我正在使用 dependency walker 版本 2.2.9600 x86,Windows 8.1 x86,office 2010 x86
我还尝试设置一台全新安装 win 8.1 和 Office 2010 的虚拟机,但是当我加载 .xll 时,XL 不会在该机器上崩溃。
我在另一台机器上工作 Windows 10 x64、office 2013 x64 和 dependency walker x64。我可以分析 Excel.
注意:我最终改用了 Sysinternals Process Explorer。有点复杂,但有效。
我目前正在使用 Windows 10 build 1809,depends.exe 我尝试使用的每个 dll 都会挂起。 depends 主页显示“Dependency Walker 在 Windows 95、98、Me、NT、2000、XP、2003、Vista、7 和 8 上运行”所以我猜它不受支持。
试试 Dependencies - 一个 open-source 现代的 Dependency Walker,它对我来说很好用。
Microsoft 一直在非常缓慢地向 Windows OS API 库添加模块化、版本控制和间接寻址。1这项工作始于 Windows 7,但仅在 Windows 10 的最新版本中,该计划才触及一些核心 win32/kernel 库,这些库基本上是所有传统的 Windows 二进制文件 link 并使用。
天真的依赖遍历器会为自己创建图组合爆炸,他们会尝试渲染完整的依赖图,而无需一些额外的逻辑来短路该间接层,或将图搜索的深度限制为按需一定的深度。如果你的程序比较简单,depends.exe
最终会唤醒并为你渲染依赖图,但可能需要几个小时。
我不知道 depends.exe
的作者是否打算更新它,但与此同时,正如安德鲁在他的回答中指出的那样,[=31= 上的 lucasg/Dependencies
项目] 似乎没有遇到同样的问题。
另见 SO post:
重新配置模块搜索顺序。尝试禁用除 KnownDLL 和应用程序目录之外的所有内容,然后打开文件进行检查。
Dependency walker 构建了非常大的子依赖列表,并且 GUI 元素挂在这个操作上:(
我在客户端 PC 上加载 my.xll 插件时遇到问题。 它在启动时崩溃 Excel(可能是因为缺少相关的 dll)。
我知道可以在配置文件模式下使用 dependency walker 来找出 .exe 运行时加载了哪些 dll。 当我尝试 dependency walker 在分析时挂起 Excel,但我找不到原因。
在命令中 window 我 运行 这个:
C:\Program Files (x86)\Windows Kits.1\Tools\x86>start /wait depends.exe /c /f:1 /pb /pp: 1 /pg:1 /oc:d:\temp\Log.txt "C:\Program Files (x86)\Microsoft Office\Office14\excel.exe"
但是它挂了。
我正在使用 dependency walker 版本 2.2.9600 x86,Windows 8.1 x86,office 2010 x86
我还尝试设置一台全新安装 win 8.1 和 Office 2010 的虚拟机,但是当我加载 .xll 时,XL 不会在该机器上崩溃。
我在另一台机器上工作 Windows 10 x64、office 2013 x64 和 dependency walker x64。我可以分析 Excel.
注意:我最终改用了 Sysinternals Process Explorer。有点复杂,但有效。
我目前正在使用 Windows 10 build 1809,depends.exe 我尝试使用的每个 dll 都会挂起。 depends 主页显示“Dependency Walker 在 Windows 95、98、Me、NT、2000、XP、2003、Vista、7 和 8 上运行”所以我猜它不受支持。
试试 Dependencies - 一个 open-source 现代的 Dependency Walker,它对我来说很好用。
Microsoft 一直在非常缓慢地向 Windows OS API 库添加模块化、版本控制和间接寻址。1这项工作始于 Windows 7,但仅在 Windows 10 的最新版本中,该计划才触及一些核心 win32/kernel 库,这些库基本上是所有传统的 Windows 二进制文件 link 并使用。
天真的依赖遍历器会为自己创建图组合爆炸,他们会尝试渲染完整的依赖图,而无需一些额外的逻辑来短路该间接层,或将图搜索的深度限制为按需一定的深度。如果你的程序比较简单,depends.exe
最终会唤醒并为你渲染依赖图,但可能需要几个小时。
我不知道 depends.exe
的作者是否打算更新它,但与此同时,正如安德鲁在他的回答中指出的那样,[=31= 上的 lucasg/Dependencies
项目] 似乎没有遇到同样的问题。
另见 SO post:
重新配置模块搜索顺序。尝试禁用除 KnownDLL 和应用程序目录之外的所有内容,然后打开文件进行检查。
Dependency walker 构建了非常大的子依赖列表,并且 GUI 元素挂在这个操作上:(