Visual Studio 2010生成的可执行文件大小更大

Mig*_*igs 9 size executable visual-studio-2010

我有一个最初用Visual Studio 6.0编写的C++应用程序

该应用程序是标准的原始Win32 API,没有MFC(*编辑2),没有.NET,静态链接,多线程可执行文件.

我已经迁移到所有版本的Visual Studio到2010年(今天),直到现在才出现任何问题:

它可以与VS2010完美地编译和运行,但生成的可执行文件大小要大四(4)倍!

我已经尝试了所有我知道的选项(优化,删除调试信息等),没有结果.当然,我是VS2010的新手,但不是Visual Studio的新手.

有谁遇到过这个问题?再说一遍:我没有使用任何框架,它是一个原始的,静态链接的Win32应用程序,没有DLL,没有ODBC,没有网络,没有.NET

希望再次看到我的可执行文件小,我感谢你的任何输入.

  • 编辑1:原始大小= 626KB(VS6.0,VS2008)膨胀大小= 2.013KB(VS2010)

  • 编辑2:经过一些研究和转储,我发现了一个隐藏的MFC参考.最初我说它不使用MFC,但确实如此.

Hel*_*ein 2

大小的增加可能是由 MFC 的更改引起的。这里有一个解释,这里是同一作者的一个解决方法,它将可执行文件的大小恢复到 2008 年的区域。该解决方法涉及编辑 MFC 源文件的副本,不过,这个过程可能不是每个人都满意,每次更新后都需要重复此操作,例如安装 Visual Studio 服务包后。

更新:

看起来OP不使用MFC,所以这可能是两个不同的问题。我自己也经历过大小增加,但遗憾的是不能确定是否由 MFC 引起,因为我的项目静态链接到 MFC。