日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

VC++6 开发MFC扩展DLL以及MFC DLL可以包含界面

發布時間:2025/4/14 c/c++ 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 VC++6 开发MFC扩展DLL以及MFC DLL可以包含界面 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

VC環境可以開發win32 DLL和MFC DLL;下面來開發一個MFC DLL;Win7, VC6;
新建一個MFC exe工程;名為mfcddd;在同級目錄下新建一個文件夾,名為mfcbin;

默認的exe輸出目錄;

改為如下;

生成exe后;

新建一個mfc dll工程;名為myddd;

選擇MFC 擴展DLL;MFC擴展DLL可以導出類;

在dll添加一個類;

設置dll和Lib文件輸出路徑;
/out:"…/…/mfcbin/myddd.dll" /implib:"…/…/mfcbin/myddd.lib"

生成類后環境自己生成了頭文件、CPP文件、構造和析構函數;
添加自己的代碼;類定義前面添加 AFX_EXT_CLASS ,此表示類可以被導出;
添加了自己的代碼以后類如下;
頭文件;

class AFX_EXT_CLASS basestation {private:CString baseaddress; //基站位置public:basestation();virtual ~basestation();void setaddress(CString );CString getaddress();};

CPP文件;

basestation::basestation() {}basestation::~basestation() {}void basestation::setaddress(CString addr) {baseaddress=addr; }CString basestation::getaddress() {return baseaddress; }

先生成dll看一下;

然后在exe工程;設置Lib路徑;

把dll中類的頭文件在exe工程中拷貝一份;此頭文件不必再包含 AFX_EXT_CLASS;對話框的cpp文件包含此頭文件;

exe工程對話框中添加一點界面;

為按鈕添加一個單擊消息處理函數;

為編輯框添加一個成員變量;此成員變量屬于對話框類;

添加完成員變量;

設exe為活動工程;

構建一下;出錯;找不到myddd.lib;
在對話框CPP文件頭部添加 #pragma comment(lib, “S:\94\vcprj\mfcbin\myddd.lib”);使用代碼來導入Lib;

按鈕代碼如下;運行;調用了dll中的類;UpdateData(FALSE),把成員變量的值交換到界面的控件上顯示;

如果只需要導出類的話;用Win32 DLL也行;MFC擴展DLL還可以包含界面;下面來進行;
在DLL工程添加一個對話框資源;

為此對話框新建一個類;

MFC類帶有基類;前面開發的類沒有;

設置此對話框類為可導出;

構建DLL;出現下圖錯誤;對話框頭文件中對話框的標識符未定義;

包含Resource.h;然后生成DLL;

在exe項目中拷貝一份dll中對話框類的頭文件;去除AFX_EXT_CLASS;
exe的對話框cpp文件包含:
#include “basestation.h”
#include “testDlg.h”
編譯一下exe;出錯;

exe的資源文件添加IDD_DIALOG1的數值定義;

按鈕代碼;

void CMfcdddDlg::OnButton1() {// TODO: Add your control notification handler code herebasestation base1;base1.setaddress("長安街11號");m_addr = base1.getaddress();UpdateData(FALSE);testDlg dlg1;dlg1.DoModal(); }

點擊按鈕后運行如下;除了調用到DLL中類;還彈出了DLL中的對話框;

工程;

總結

以上是生活随笔為你收集整理的VC++6 开发MFC扩展DLL以及MFC DLL可以包含界面的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。