[英]What is the correct way to add .dll file in a MSVC 2010 project
我需要在MSVC 2010中的win32控制台應用程序項目中使用庫libMPSSE.dll 。編寫代碼后,我只是將dll復制到我的.cpp文件所在的文件夾中。 我能夠成功編譯,但問題是我有鏈接錯誤:
libMPSSE.dll:致命錯誤LNK1107:文件無效或損壞:無法讀取0x308
這是dll本身的問題還是dll路徑有問題。 我們如何將dll添加到項目中?
他們沒有提供任何.lib文件。 完整的代碼在這里
這些是鏈接到DLL的常用步驟:
我的猜測,看看你的錯誤信息,是在第2步中你將.dll傳遞給鏈接器而不是傳遞.lib文件。
如前所述,您無法直接使用C鏈接器鏈接到.dll文件。 有win32 API可以加載.dll文件並返回指向函數的指針。 通常,.dll文件附帶.lib文件包含為您帶來此負擔的代碼,並提供API .dll文件公開。 您只需要鏈接到此.lib文件並將.dll文件放在創建的.exe文件附近。
特別是關於libMPSSE,它在發行說明中說,您可以將提供的.a文件重命名為.lib文件,以便在Visual Studio中鏈接到它(項目屬性 - >配置屬性 - >鏈接器 - >輸入)。 我嘗試了它,它的工作原理。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.