VC6中减小生成EXE文件的大小

经试验,最简单,有效的方法为:

1.编译Release版

2.工程设置->Win32 Release->C/C++->Code Generation->Use run-time library:->Multithreaded DLL

3.工程设置->Win32 Release->连接->工程 选项[o]:  最后面加上“/OPT:NOWIN98” (不包含引号)

或在代码中添加:

#pragma comment (linker, "/OPT:NOWIN98")


如想更加减少程序体积:


更多可参考:

http://bbs.pediy.com/showthread.php?threadid=28058

http://bbs.pediy.com/showthread.php?t=26504

http://bbs.pediy.com/showthread.php?s=&threadid=19823


以下摘自:http://bbs.csdn.net/topics/320019442


#2(mikespook):
既然不用exe压缩工具,就手工编辑 PE 结构吧。那样可以把 exe 文件缩得很小,很小~~


#3(xingzhe2001):
需要你在编程序的时候注意,不要滥用模板,减少全局变量。


#4(whg01):
尽量复用代码,能用系统api做的,就不要自己写。
比较大的初始化数据,考虑从文件中读取,而不是编译在代码中。


#5(myhder):
在不改变原有代码的基础上缩减exe大小的话
可以这样设置
vc6.0中
工程 ->设置-》c/c++ ->"分类"中 选择 Code Generation ,然后在Use run-time library中 选择
Multithreaded DLL


#6(thy38):
优化中选择大小最优,多用函数少用内联、模板、宏,用表格驱动。


#7(oLINo):
内联汇编


#8(blpluto):
尽可能少用模版和内联
多用系统API;
如果还想再好点的话。。就自己写PE吧。。觉得够小


#9(kobemouse):
尽量使用动态链接库,这样可以很大的减少exe大小。否则只能通过编译选项来优化代码尺寸了。


#10(jackyjkchen):
楼上都是顾左右而言他,再不调动代码的情况下,VC可以自己减少50%以上的体积


release
/md /o1 /opt:nowin98 /entry:main /align:16(这个值根据情况,有时太小程序会出错) /merge:.rdata=.text /merge:.data=.text(慎用这两个)


VC6~VC9,用这些选项可将hello world程序控制在600字节左右

2.工程设置->Win32 Release->C/C++->Code Generation->Use run-time library:->Multithreaded DLL

你可能感兴趣的:(VC6中减小生成EXE文件的大小)