使用vs2008+MFC进行开发,发现静态编译出来的文件超级大,超出了可以忍受的范围。于是做了如下实验:

 

vs2008下:

test 1、新建一个默认的MFC对话框工程,采用共享MFC的方式,生成文件:82KB

test 2、新建一个默认的MFC对话框工程,采用静态链接MFC的方式,生成文件1.66MB

 

vs2005下:

test 1、新建一个默认的MFC对话框工程,采用共享MFC的方式,生成文件:52KB

test 2、新建一个默认的MFC对话框工程,采用静态链接MFC的方式,生成文件308KB

 

这个结果令人郁闷,难道要退回vs2005不成。

 

:)

 

请教牛人后得到如下解决方案:

1、stdafx.h中注释掉

//#include <afxcontrolbars.h>     // 功能区和控件条的 MFC 支持



2、app中将从CWinAppEx派生改成从CWinApp派生

3、副作用:会导致一些头文件需要自己加