1.1 建立dll專案
1.2 為dll專案編寫原始檔
標頭檔案dlldemo.h
extern "c" _declspec(dllexport) int sum(int a,int b);//加法函式。
extern "c" _declspec(dllexport) int max(int a, int b);//取較大值函式
extern "c" _declspec(dllexport) int min(int a, int b);//取較小值函式原始檔dlldemo.cpp
大氣象
#include "dlldemo.h"
extern "c" _declspec(dllexport)int sum(int a, int b)
extern "c" _declspec(dllexport)int max(int a, int b)
extern "c" _declspec(dllexport)int min(int a, int b)
1.3 生成dll檔案
編譯原始檔,如果沒有出現錯誤提示,那麼,在專案檔案根目錄的debug資料夾內會生成乙個dll檔案「dlldemo.dll」。
2 dll呼叫
2.1 用c++呼叫顯式鏈結
新建乙個win32的控制台程式進行顯式呼叫:
1. 新建「dllconsoleevident」的win32控制台程式專案
2. 新建cpp檔案「dllconsoleevident.cpp」
3. 將在第一節中,在debug目錄下編譯生成的「dlldemo.dll」(顯式呼叫時只需要這乙個檔案就夠了)檔案複製到「dllconsoleevident」專案下的debug資料夾根目錄下
4. 在「dllconsoleevident.cpp」檔案中編寫以下**對dll中的函式進行顯式呼叫
**:#include
#include<
windows
.h>
using namespace std;
void main(void)
if (min)
freelibrary(hdll);//解除安裝mydll.dll檔案;}
}from:
VC 動態鏈結庫 DLL 程式設計
vc 動態鏈結庫 dll 程式設計 一 理解庫 vc 動態鏈結庫 dll 程式設計 二 非mfc dll vc 動態鏈結庫 dll 程式設計 三 mfc規則dll vc 動態鏈結庫 dll 程式設計 四 mfc擴充套件 dll vc 動態鏈結庫 dll 程式設計 五 dll典型例項 動態鏈結庫 dl...
建立C 動態鏈結庫 dll
先來一段vc 給我們提供的標準模板 ifdef connection exports define connection api declspec dllexport else define connection api declspec dllimport endif 此類是從 connectio...
動態鏈結庫DLL
函式和資料被編譯進乙個二進位制檔案 通常擴充套件名為.lib 靜態庫 在使用靜態庫的情況下,在編譯鏈結可執行檔案時,鏈結器從庫中複製這些函式和資料並把它們和應用程式的其它模組組合起來建立最終的可執行檔案 exe檔案 在多個同樣的程式執行時,系統保留了許多重複的 副本,造成記憶體資源浪費。動態庫 使用...