Google Code Prettify

2013年10月17日 星期四

C/C++ 製作 DLL 教學


動態連結函式庫(Dynamic Linking Library, DLL)

就是我們常聽到的DLL,而DLL的連結可以分成兩種:

動態連結DLL(dynamic linking DLL)靜態連結DLL(static linking DLL)

而動態連結DLL又分成 顯式加載 隱式加載

這邊要介紹的是 隱式加載 的 動態連結DLL


製作DLL:

1.建立新專案,開啟win32主控台應用程式
























2.選擇DLL後按完成




























3.進入後在專案上按右鍵,新增一個標頭檔(.h),名字就跟DLL的名字一樣

























4.在標頭檔(.h)中宣告 DLL的方法,並且定義DLLIMPORT(可自行更改名字)

在方法的前面,將DLL的方法做輸出



























5.在DLL的.cpp檔中寫方法的內容,並且記得include 你的標頭檔 (.h),到這邊就可以

正常compiler你的DLL檔囉!!



























6.你會在你的專案中找到你製作的DLL和你DLL的.lib檔



















接下來就是正式的呼叫你做的DLL來作使用囉~~



呼叫DLL:

1.建立新專案,一樣是win32主控台應用程式
























2.這邊是勾選 主控台應用程式



























3.先在專案的屬性(property) -->  C/C++  -->  一般 (general)  -->其他Include目錄

將你剛剛做的DLL的(.h)檔的位置include進來
























4.在連結器(linking) --> 一般(general)  --> 其他程式庫目錄

在這邊將你剛剛製作的DLL的(.lib)檔的路徑加進來

























5.在連結器(linking) --> 輸入(input) -->其它相依性(additional dependencies)

輸入你剛剛製作的DLL(.lib)檔的名字  ex: xxx.lib




























6.程式中記得include你的DLL的(.h)

接下來你就可以呼叫DLL中的方法來使用了


























7.compiler完,記得將你剛剛製作的DLL放在你的EXE檔的同一個資料夾中




















8.執行程式,可以看到DLL呼叫成功囉!!!








4 則留言:

  1. 請問是否可以講解用靜態連結DLL(static linking DLL)的方法
    真的非常感謝

    回覆刪除
    回覆
    1. Vince 學習筆記: C/C++ 製作 Dll 教學 >>>>> Download Now

      >>>>> Download Full

      Vince 學習筆記: C/C++ 製作 Dll 教學 >>>>> Download LINK

      >>>>> Download Now

      Vince 學習筆記: C/C++ 製作 Dll 教學 >>>>> Download Full

      >>>>> Download LINK 27

      刪除
  2. 不好意思,請問這個方法是能讓"原始程式碼"中的.cpp檔呼叫另外一個.cpp檔嗎?
    我今天用opencv做了一個.cpp想讓這個.cpp呼叫在同一專案的.cpp,不知是不是需要使用你做的方法才行能?
    懇請解惑!

    回覆刪除