确定.exe依赖项

Ste*_*ven 4 windows vb6 winapi

我有一个.exe文件,我相信是用VB6创建的.Visual Studio 6或更高版本中是否有任何工具可以让我看到应用程序运行所需的任何动态库?

Jas*_*ans 14

试试这个 - Dependancy Walker.


Han*_*ant 6

您可以使用Dumpbin/imports查看隐式链接的DLL依赖项.或者Dependency Walker提供的静态视图.但是,VB6程序通常对COM组件有很大的依赖性,并且在程序运行时会加载需求.在程序加载和使用它们之前,需要注册这些组件.

要看到这一点,您需要一个实用程序来显示程序如何使用注册表.VS6工具箱中没有任何内容,您可以使用SysInternals的ProcMon实用程序.注意尝试在HKLM\Software\Classes\CLSID注册表项中打开密钥的程序,这是注册COM组件的位置.您应该看到它无法找到该密钥,您可以从中确定CLSID.

这仍然没有真正让你到处,因为这只是一个不透明的数字,它不会告诉你DLL的名称或位置.在程序正常运行的计算机上使用Regedit.exe.找到该键,LocalServer32值告诉您哪个DLL或OCX实现COM组件.