我的程序使用LoadLibrary动态地加载了一些DLL,并且(在字面上所有机器上)这些加载成功,在一台机器上这些DLL的某些内容不会被加载。我添加了跟踪lasterror的代码,并报告“0x43找不到网络名称”。LoadLibrary失败,出现lasterror 0x43无法找到网络名称
有问题的机器运行Windows 7 Enterprise x64,该DLL是一个32位的DLL,这不应该是一个问题,并且(事实上)这是我的开发环境。
我也尝试将DLL(其中包括路径)的名称转换为短文件名,并在调用LoadLibrary中使用它,我仍然有同样的错误。
任何想法?
// * eggbox
LoadLibrary有一个[复杂的搜索路径算法](http://msdn.microsoft.com/en-us/library/windows/desktop/ms682586%28v=vs.85%29.aspx),可能无效的网络路径已经结束了搜索路径? – Benj
提供给LoadLibrary的文件名是完全限定的,例如C:\ Program Files(x86)\ MyApp \ DLLs \ AssetModule.dll或短名称版本。 – eggbox
当然,但是它依赖的库呢? – Benj