VS中MFC的使用

    如果选择"在共享 DLL 中使用 MFC"的话,你编译后的程序中不包含MFC库,所以文件会比较小,但是如果你的程序直接移到一个没有安装过MFC的机器上时,可能会导致找不到MFC的DLL,如果选择"在静态库中使用 MFC ",那你编译后的程序就直接包含了调用MFC的部分的库,文件可能会大一些,但是可以直接移到其他机器上运行.
    一般都是选择“在共享 DLL 中使用 MFC”,这样程序少,而且Windows下大都有MFC的DLL.

静态库中编译出来的可执行文件拿到其它机器上也可以运行,共享DLL中编译出来的可执行文件在本机上可以执行,若拿到其它机器上就需要相应的动态库支持。

使用VS2008,在项目属性中有一项MFC的使用,有三种设置:

   1.使用标准Windows库

   2.在共享DLL中使用MFC

   3.在静态库中使用MFC

  第一种顾名思义。第二种指的是打包时一些MFC的DLL的内容没有被包含在EXE文件中,所以EXE文件较小,但是运行时要求系统中要有相关的DLL文件。第三种是将DLL中的相关代码写进EXE文件中,文件较大,但是可以在没有相关DLL的机器上运行。

mfc 静态库(在静态库中使用MFC) 大, 客户使用方便,但别的程序员用这个做开发稍难

不用mfc(使用标准Windows库) 小, 在windows平台上即可使用,但编写过程中不能使用mfc函数,二次开发和客户使用都方便

mfc 动态库(在共享DLL中使用MFC) 中, 客户使用不方便,但别的程序员用这个方便;

    “在静态库中使用 MFC” 用到的MFC代码嵌入可执行程序中,因此可执行程序可以脱离MFC运行时库环境运行,独立生成exe不需要再库/dll就可以运行;“在共享 DLL 中使用 MFC”和“使用标准 Windows 库”编译出来的程序依赖动态库.

    我个人理解是:比较经常更新的,一般都是使用“在共享 DLL 中使用 MFC“,这样我们程序升级了,主要给客户更新dll即可,不需要改变程序的原来结构,更新也方便快捷~~

如果是用于比较简单或者固定的,一般用”在静态库中使用 MFC” ,比如一些小工具

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值