【发布时间】:2012-02-09 09:37:46
【问题描述】:
我有一个应用程序,它会根据传入的参数动态加载 DLL。
当我在调试或从 MSDEV 2008 环境发布时运行它时,它工作正常。 当我在调试或从命令提示符释放时运行它时,它无法加载 DLL。
参数是一样的,我复制/粘贴了。
从命令提示符和开发环境调用 exe 的方式有区别吗?
【问题讨论】:
-
您是从 exe 所在目录的命令提示符运行 exe 吗?
-
你得到什么错误代码?您是否尝试过使用 Dependency Walker?
-
@Naveen,好问题 - 是的。
-
@SteveTaylor:出于测试目的,我会尝试两件事:(1)。将 dll 的绝对路径传递给 AfxLoadLibrary 看看会发生什么 (2)。检查是否指定了其他工作目录(即在 VS 项目属性中指定了默认目录以外的目录)。
-
@Steve Dependency Walker 非常擅长显示在这种情况下失败的位置。问题可能与路径有关;它很可能无法加载某些远程依赖项,而不是专门加载您的 DLL。
标签: c++ windows command-line