1. 程式人生 > >如何在MFC中使用動態連結庫

如何在MFC中使用動態連結庫

1.隱式連結載入動態連結庫

如果有XXX.h ,XXX.lib,XXX.dll,這樣就可以隱式連結載入了。

在所要引用的.cpp檔案中加入

#include     “XXX.h”   //包含靜態連結庫的標頭檔案

#pragma  comment(lib,"XXX")   //隱式呼叫庫檔案

這樣就可以使用dll中封裝的函數了。

其中語句“#pragma comment(lib,"XXX")”可以用工程設定對話方塊的設定來代替。

2.動態載入動態連結庫

如果只有XXX.dll,只能動態載入,主要通過LoadLibrary和GetProcAddress兩個函式來實現。

舉個小例子:

int ires;

typedef int (_cdecl *MyFunc)(int,int);

HMODULE hModule = ::LoadLibrary("MyDynamicLib.dll");    //載入動態連結庫  此提供函式GetMaxCommDiv(int,int)計算最大公約數

MyFinc GetValue = (MyFunc)GetProcAddress(hModule,"GetMaxCommDiv");

ires=GetValue(m,n);

FressLibrary(hModule);