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*”。

解決辦法:

字符集要改爲“使用多字節字符集”,重開項目,問題解決。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章