【发布时间】:2012-05-10 20:05:57
【问题描述】:
我的程序使用 LoadLibrary 动态加载许多 DLL,并且(实际上在所有机器上)这些 DLL 成功加载,在一台机器上,其中一些 DLL 没有被加载。我添加了跟踪 lasterror 的代码,这报告“0x43 找不到网络名称。”。
有问题的机器运行的是 Windows 7 Enterprise x64,DLL 是 32 位 DLL,这应该不是问题,(事实上)这是我的开发环境。
我还尝试将 DLL 的名称(包括路径)转换为短文件名,并在调用 LoadLibrary 时使用它,但仍然遇到同样的错误。
有什么想法吗?
//*蛋盒
【问题讨论】:
-
LoadLibrary 有一个complicated search path algorithm,无效的网络路径是否会出现在搜索路径上?
-
提供给 LoadLibrary 的文件名是完全限定的,例如C:\Program Files (x86)\MyApp\DLLs\AssetModule.dll,或简称版本。
-
当然,但是它所依赖的库呢?
-
好点,下面的答案让我知道我可以使用什么。
标签: winapi