vs属性设置应用:生成最小exe程序
相信初学C++的人,只了解过解决方案属性设置里面有 C++ ->优化,可以进行优化设置,至于如何设置,不清楚,老师也没讲过
发个帖子,教大家生成一个最小的exe程序
一 写信息框的控制台程序
#include "stdafx.h"
#include<Windows.h>
int main()
{
//MessageBox(NULL, L"hello", L"hello", 0);
MessageBox(NULL, L"hello", L"hello", 0);
return 0;
}
二 debug和release 版本
先看大小
debug:
37K
release:
9K,可以啊,小了不少了,
如果9K你就满足的话,就图样图森破了
三 开始设置属性
1 代码优化属性 (alt+enter)->C/C++->优化,如图设置:
编译后,看下大小,我去,还是9K,继续设置
2 代码生成设置
先把必须的全部带上,代码生成->运行库:多线程/MT,安全检查->禁用
74K
3 忽略所有库
生成时候报错:
//==========
提示:
严重性 代码 说明 项目 文件 行 禁止显示状态
错误 LNK2001 无法解析的外部符号 _mainCRTStartup hello E:\work\vs2010\hello\hello\LINK 1
//==========
其实exe程序运行前,程序做了许多事情,
1 执行了GetVersion 获取当前运行平台的版本号
2 _heap_init (),初始化堆空间
3 GetCommandlineA(),获取命令行地址
4 _crtGetEnvironmentStringsA(),获取环境变量的地址
5 _setargv(),取出命令行参数
6 _setenvp(),取出环境变量参数
命令行地址,命令行参数,环境变量参数作为三个参数传递给main()函数,
7 _cinit(),初始化全局数据和浮点寄存器
报错的原因是找不到入口点,接下来定义程序的入口点和合并节:
编译:
直接到了3K
还能不能再小了?
能,清单文件也可以不要啊
编译后看看大小:
2K
似乎不能再小了
发帖记录下,自己的学习过程
另外,有些人刚会用易语言,就觉得易语言无所不能
我只想说"少年,图样图森破,,..."
{:5_124:}
感谢大佬,学习学习 先把必须的全部带上,代码生成->运行库 那里为啥不选 dll
页:
[1]