※程序在vs2010編譯運行
1.使用vs2010新建mfc動態鏈接庫項目,
2.等待項目創建完成後,在資源管理器界面新添加自定義的對話框資源。
3.設好選項後,創建對話框,然後自行進行相關控件的配置。
4.之後在主界面上【右擊】【添加類】,並設好類名。
5.在生成的“類名”.cpp文件中添加控件消息(此處指添加了一個button控件做示範)。
6.添加好控件後,在“類名”.h文件中如下設置好導出函數(這裏使用標準C接口導出)。
7.之後在資源管理器中找到.def文件,添加要導出的函數名。*
全部設置好後,生成dll。
8.至此dll工程創建完畢,接下來我們再寫一個函數加載該dll測試一下。
新建"測試程序.cpp",並寫下如下代碼加載DLL:
#include <iostream>
#include<Windows.h>
using namespace std;
void main()
{
typedef void(*FUNA)(void); //這裏對應導出函數的類型與參數。
HMODULE hmodule = LoadLibrary("testdll"); //需要加載的DLL名稱。
if (hmodule)
{
FUNA dll_Func = (FUNA)GetProcAddress(hmodule, TEXT("Func")); //這裏寫導出函數名。
if (dll_Func != NULL)
{
cout<<"dll加載成功。"<<endl;
dll_Func();
}
else
cout<<"無法找到DLL"<<endl;
FreeLibrary(hmodule); //這裏釋放DLL。
}
else
cout<<"加載失敗!"<<endl;
system("pause");
}
//測試程序.cpp(這裏爲了方便我就直接用VC++6.0編譯了)
9.編譯鏈接好後,將測試程序與dll放到一起,並測試。
Fin