VC++6.0 缩小体积的头文件:
#ifdef NDEBUG
#pragma optimize("gsy", on)
#pragma comment(linker, "/RELEASE")
#ifdef _MERGE_RDATA_
#pragma comment(linker, "/merge:.rdata=.data")
#endif
#pragma comment(linker, "/merge:.text=.data")
#pragma comment(linker, "/merge:.reloc=.data")
#if _MSC_VER >= 1000
#endif
#endif
#pragma comment(linker, "/ENTRY:WinMain")
#pragma comment(linker, "/MERGE:.rdata=.data")
#pragma comment(linker, "/MERGE:.text=.data")
#pragma comment(lib, "msvcrt.lib")
#if (_MSC_VER < 1300)
#pragma comment(linker, "/IGNORE:4078")
#pragma comment(linker, "/OPT:NOWIN98")
#endif
#define WIN32_LEAN_AND_MEAN
以上在 dll 文件最小化中,不怎么好用
参考文章:[普及]程序自启动方式 - ActiveX
我现在采用下面的方法:(可用)
参考链接:vc编译exe的体积最小优化
- 使用 VC++6.0 编译文件
1、自定义入口函数:“Project(工程)--->settings(设置)"选项,选中"link"选项卡,在"Category(分类)"下拉列表中选"output",在" Entry-Point symbol(输入项-点符号)” 输入 自定义函数名,详细见链接
2、精简内容:(头文件加入)
#pragma comment(linker, "/align:512")
#pragma comment(linker, "/merge:.data=.text")
#pragma comment(linker, "/merge:.rdata=.text")
3、注意:用VC++6.0编译文件,ANSI版本比较简单