/////////////////////////////////////////////////////////////////////////
該解決方案旨在提供一種能夠從非MFC擴展DLL中導入一個自定義的類的方案。
自定義的類從某種意義上來講,也是一種用戶自定義的數據,形如struct。
基于此考慮,完全可以從非MFC擴展DLL中導入非MFC的用戶自定義的類。
方案如下:
1) 首先建立一個DLL( WIN32 DLL)工程,創建頭文件*.dll,自定義一個類,
在類的前面添加"__declspec(dllexport)"關鍵字,表示該工程到處這個類。
例如: class __declspec(dllexport) myClass ...
2) 在其實現文件中,添加頭文件"#include "*.h"",并實現相應的類實現部分。
3) 編譯執行生成*.dll文件,將其COPY到應用測試工程的執行目錄下(debug/release)
下,COPY DLL工程的頭文件*.h到應用測試工程的目錄下,添加進項目中,并將其中的
"__declspec(dllexport)"修改為"__declspec(dllimport)"。
4) 在其實現文件中添加頭文件"#include "*.h"",然后對其導入的類進行相應的操作。
5) 編譯運行測試程序,便可以實現類相關的操作。
NOTE: 對于靜態/動態鏈接到MFC的規則DLL也可以達到同樣的效果,導入自定義的類。