C++製作動態鏈接庫dll


花了點時間從零開始自學了VS2010環境下製作動態鏈接庫,初步掌握了生成動態鏈接庫的步驟,用自己寫的讀GLONASS文件的類做了實驗,使用動態鏈接庫調用了自己寫的函數,併成功讀取文件。

    整理步驟如下:

1、創建win 32的動態鏈接庫項目:

C++製作動態鏈接庫dll

 

2、項目編輯成功後,自動創建以下幾個文件:

C++製作動態鏈接庫dll

3、把需要編譯的代碼加入到工程項目中,在我做的試驗中,需要加入的代碼就是ReadGLONASSNav.h和ReadGLONASSNav.cpp ,然後在dllmain.cpp中#include"ReadGLONASSNav.h",這樣編譯後就已經能生成dll和lib了,但是爲了能夠讓函數能夠在外部調用,還需要對函數進行第四步的說明;

4、將需要在外部調用的函數前加上關鍵字_declspec(dllexport)聲明爲外部函數,即:

C++製作動態鏈接庫dll
這樣再編譯後,所聲明的函數就可以在外部調用了。

 

5、調用dll。將dll,lib,及對應的.h文件拷貝到需要應用的目錄下,在需要應用的文件中#include頭文件,就可直接應用。

 

6、設置lib目錄,右擊工程項目,在下圖位置加入自己的lib文件名:

C++製作動態鏈接庫dll

   大功告成,用了以下代碼調用動態庫,結果正確,成功讀取了文件。

C++製作動態鏈接庫dll

 

    參考貼1:http://www.cppblog.com/Amigo/archive/2008/05/14/49874.html (創建dll的方法步驟)

    參考貼2:http://hi.baidu.com/bigccyy/blog/item/bbf86963d45f43600d33fa08.html (lib與dll的區別)

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