Windows静态库和动态库的调用方法汇总
生活随笔
收集整理的這篇文章主要介紹了
Windows静态库和动态库的调用方法汇总
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
靜態庫的調用方法
第一種:項目設置中引用,在項目的屬性中設置。?
第二種:在代碼中使用 #pragma comment(lib,"lib文件名")
第一種方法:?
步驟一:?
右鍵單擊項目—>屬性—>配置屬性—>鏈接器—>常規—>附加庫目錄?
在其中填入lib庫的目錄,也可以是相對或絕對路徑。?
步驟二:?
右鍵單擊項目—>屬性—>配置屬性—>鏈接器—>輸入—>附加依賴項?
在其中填入lib庫的名稱,如:Test.lib?
其等價于程序中的#pragma comment(lib,"*.lib")
第二種方法:
#progma comment(lib,"lib文件名"); 中lib文件名也可以是帶相對路徑或是絕對路徑的lib。
#pragma comment(lib,"..\\lib文件名")
如果是不帶路徑的lib文件名,則可以通過第一種方法的步驟一的方式來指定該lib的路徑。
動態庫的隱式調用有兩種方法(與靜態庫的兩種引用方法一樣):
第一種:項目設置中引用,在項目的屬性中設置,在其中填入lib庫的名稱,如:Test.lib
第二種:在代碼中使用 #progma comment(lib,"lib文件名");?
1、創建一個函數指針,其指針數據類型要與調用的 DLL 引出函數相吻
合。
2、通過 Win32 API 函數LoadLibrary()顯式的調用DLL,此函數返回
DLL 的實例句柄。
3、通過 Win32 API 函數GetProcAddress()獲取要調用的DLL 的函數地
址,把結果賦給自定義函數的指針類型。
4、使用函數指針來調用 DLL 函數。
5、最后調用完成后,通過 Win32 API 函數FreeLibrary()釋放DLL 函數
第一種:項目設置中引用,在項目的屬性中設置。?
第二種:在代碼中使用 #pragma comment(lib,"lib文件名")
第一種方法:?
步驟一:?
右鍵單擊項目—>屬性—>配置屬性—>鏈接器—>常規—>附加庫目錄?
在其中填入lib庫的目錄,也可以是相對或絕對路徑。?
步驟二:?
右鍵單擊項目—>屬性—>配置屬性—>鏈接器—>輸入—>附加依賴項?
在其中填入lib庫的名稱,如:Test.lib?
其等價于程序中的#pragma comment(lib,"*.lib")
第二種方法:
#progma comment(lib,"lib文件名"); 中lib文件名也可以是帶相對路徑或是絕對路徑的lib。
#pragma comment(lib,"..\\lib文件名")
如果是不帶路徑的lib文件名,則可以通過第一種方法的步驟一的方式來指定該lib的路徑。
動態庫的隱式調用有兩種方法(與靜態庫的兩種引用方法一樣):
第一種:項目設置中引用,在項目的屬性中設置,在其中填入lib庫的名稱,如:Test.lib
第二種:在代碼中使用 #progma comment(lib,"lib文件名");?
編譯鏈接時需要.lib,執行時需要.dll。
1、創建一個函數指針,其指針數據類型要與調用的 DLL 引出函數相吻
合。
2、通過 Win32 API 函數LoadLibrary()顯式的調用DLL,此函數返回
DLL 的實例句柄。
3、通過 Win32 API 函數GetProcAddress()獲取要調用的DLL 的函數地
址,把結果賦給自定義函數的指針類型。
4、使用函數指針來調用 DLL 函數。
5、最后調用完成后,通過 Win32 API 函數FreeLibrary()釋放DLL 函數
總結
以上是生活随笔為你收集整理的Windows静态库和动态库的调用方法汇总的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux多线程 pthread用法
- 下一篇: Windows 系统下使用 MinGW