2016-03-07 51 views
0

我在基于x64的处理器中使用Visual Studio 2010。LoadLibrary(xx.dll),错误126

我有错误LoadLibrary(_T("xx.dll")) with 126.

我试图Dependency Walker中找出所有.dll和模块,功能依赖性。它显示一切都很好。

其实旧代码在32位操作系统中正常工作并编译。我搬到64位操作系统后,出现错误。

我使用.exe文件将所有.dll库复制到同一目录中。

编译xx.dll在32位然后在64位执行后是否有任何冲突?

非常感谢您的任何建议和意见。

+0

您现在在64位应用程序中使用旧的32位DLL吗? – Youka

+0

@Youka感谢您的快速回复。是的,我已将所有旧的DLL复制到我的64位应用程序中。 – Tuvi

+1

这是一个简单的“文件未找到”的错误,我们无法为您找到它。启用加载程序捕捉或使用SysInternals的进程监视器来了解哪个DLL是问题。 –

回答

0

64位应用程序无法加载32位DLL,WOW64(64位上的Windows 32位仿真)仅适用于产卵过程/可执行文件,而不适用于运行时。已经在SO上多次回答,例如here

您需要编译/获取您的DLL的64位版本。

+0

谢谢。我删除了所有旧的.dll,并删除了与32位相关的所有代码。最后它工作。 – Tuvi

相关问题