我正在尝试在具有数十个同名共享库的机器上调试一些共享库问题。我需要在 10 个同名文件中找到一个正常工作的 .dll。
当我们移动计算机时,程序似乎加载了错误的 dll。
在工作计算机上,我想确切地确定程序选择了哪个 dll。我能够获得显示的 dll 的名称,但不是完整路径。
有人知道如何显示完整路径吗?
您确实想下载并运行Dependency Walker。在此程序中打开您的应用程序将显示其所有依赖项,显示它们的路径(并且您可以显示完整路径)并显示它无法找到的那些 DLL。
如果您的某些 DLL 是动态加载的,只需使用配置文件选项来实际执行应用程序。
这将另外显示在您的程序中稍后加载的那些依赖项。
我建议使用Process Explorer。
这将让您查看已加载的 DLL(甚至是动态加载的),以及其他有用的信息,例如套接字、安全性、环境变量、线程和字符串,所有这些都无需启动调试器。