delphi 编译生成的 exe 文件,占用磁盘字节数比较大的原因在于,delphi 编译的文件中包含有其他的数据信息更多。
以下在 delphi xe 10 中,建立一个只包含空窗体的工程,通过多种配置进行编译,生成的 exe 文件大告碰小的测试:
1、通常 delphi 的文件为了调试方御枯便,默认新建工程进行编译的 exe 文件,是包含有 Debug 信息的,其生成的 exe 文件大镇友洞小约为10.5M:
2、如果将去除调试数据,使用发布版(Release)进行编译,则生成的文件大小约 2.1 M,exe 文件占用大幅减少,可见 debug 占用了很大的磁盘空间:
3、进一步关闭 RTTI(Run-Time Type Information) 反射机制,最后生成的exe 文件约 1.69M:
简单经过以上3步,delphi 生成的 exe 文件大小已经从最初的 10.5 M,减小到 1.69 M。
此外,诸如:低版本的 delphi 使用 AnsiString 作为缺省字符集,而高版本使用 UniCode 作为字符集等因素,也会使得 exe 文件增大。
因为delphi编译的exe是基本不依赖别的dll的。另,面向对象语言,由于继承、多态等因素,VCL库中本身含有丰富的功能贺悄,虽然你的程序只用了其滑渣中的少部分,但封装时自然是有不少冗余信拍悄的。所以delphi编译的程序较大!可以用exe文件压缩工具将其压缩到30%左右。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)