MFC exe项目封装成DLL

本文介绍如何通过新建MFC DLL项目并进行相应配置,来封装一个现有的EXE项目,实现功能模块化并方便在其他项目中复用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一言以蔽之:给原项目包层接口。

具体实现:

  1. 新建一个MFC的DLL项目(MyDll);
  2. 删除MyDll项目的.rc文件;
  3. 将正常运行的exe项目(MyExe)的所有文件包括.h,.cpp,.rc和资源文件等复制到MyDll项目,MyExe.rc文件重命名为MyDll.rc
  4. 删除原实例化WinApp的.cpp类及其头文件,(一般名称为MyExe.cpp和MyExe.h);将所有对它的引用改成MyDll.h;(不做这一步会产生datacore.cpp line:380的错误);
  5. 在MyDll.cpp添加代码:
  6. extern "C" __declspec(dllexport) void ShowDlg(void)  
    //void ShowDlg(void)
    {  
    
    AFX_MANAGE_STATE(AfxGetStaticModuleState());//为了保证代码准确防止调用失败
    CFileBrowserDlg dlg;  
    dlg.DoModal();  
    
    }

  7. 选择生成方式,dllexport或者def(需要去掉extern “c” _decispecl(dllexport))编译即可生成MyDll.lib和MyDll.dll文件;
  8. 在其他项目需要的地方引用这两个文件即可。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿峰不想搬砖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值