C C++ 调用第三方DLL库失败 LoadLibrary 返回NULL 并报 126 错误 解决办法

在之前有写关于生成dll文件以及调用dll的方法:https://blog.csdn.net/Hilaph/article/details/104917856

而在vs2019新开一个项目并运行调用相关第三方dll时,出现LoadLibrary返回值判断为NULL,使用DWORD a = GetLastError();查看错误代码为126.这个报错一般都是因为找不到dll文件所导致的

在网上查阅资料一般为以下几种情况:

(1).看给loadlibrary传的dll路径是否正确

(2).dll关联的其他dll文件是否一起发布,可用depends工具查看dll文件关联的其他dll文件

(3).传递的dll文件名是char[]类型的,这是类型不兼容的错误

在排除前两个错误后,判定是第三种状况,以为LoadLibrary内的字符串下有提示“语意不同的字符串类型之间的强制转换 char * wchar_t*”。

解决办法:

字符集要改为“使用多字节字符集”,重开项目,问题解决。

发布了16 篇原创文章 · 获赞 10 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/Hilaph/article/details/105485230
今日推荐