目前网络上 XE8程序瘦身基本为XE5以前的方法,虽然该方法也必须援用之前方法.但需要说明一下,现在release比debug瘦身效果相差无几.我的XE8单独窗体EXE文件为11056KB.瘦身后exe文件最低可以达到 90KB.

下面是方法介绍.

第一步:关闭debug infomation.

打开工程后,依次点击project--option--delphi compiler--linking 将右边Debug information改为False.

编译后Debug和Release版都为2142KB.

此处参考http://www.delphifans.com/InfoView/Article_6493.html

第二步: 关闭RTTi.

点击Project--view source.在第二行添加编译开关代码

{ Reduce EXE size by disabling as much of RTTI as possible (delphi 2009/2010) }
{$IF CompilerVersion >= 21.0}
{$WEAKLINKRTTI ON}
{$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])}
{$IFEND}

编译后Debug和Release版都为1728KB.

第三步:设置运行时包.

打开工程后,依次点击project--option--Packages--Runtime Packages 勾选Link with runtime package.

编译后Debug的exe文件为90Kb,Release为1728KB

对于第三步,如不是太计较exe大小,则不是太建议.请看帮助资料.

Runtime packages are deployed with your applications. They provide functionality when a user runs the application.

To run an application that uses packages, a computer must have both the application's executable file and all the packages (.bpl files) that the application uses. The .bpl files must be on the system path for an application to use them. When you deploy an application, you must make sure that users have correct versions of any required .bpls.

这意味着当选择使用该选项的debug版时,你必须把正确的bpl文件一起放在应用程序目录或系统目录.我一个单按钮窗体程序必须拷贝2个bpl文件.

正确的bpl在\Embarcadero\Studio\16.0对应的文件夹里面找,比如我的虚拟xp,则为\Embarcadero\Studio\16.0\Bin目录

而且如果修改了某个控件源码,意味这必须重编译该控件.

Delphi XE8 程序瘦身.编译后EXE最低90KB相关推荐

  1. iOS应用程序瘦身的静态库解决方案

    为什么要给程序瘦身? 随着应用程序的功能越来越多,实现越来越复杂,第三方库的引入,UI体验的优化等众多因素程序中的代码量成倍的增长,从而导致应用程序包的体积越来越大.当程序体积变大后不仅会出现编译流程 ...

  2. .NET跨平台实践:Linux .Net Core自宿主应用程序瘦身记

    一,.NET Core 自宿主应用程序个头有点大 发布.NET Core应用程序有两个方式,一种是"便携式",一种是"自宿主式".便携式发布时,目标程序不带.n ...

  3. 更改后缀为.dex文件为.odex文件 让你的程序瘦身 运行更稳定

    今天无聊就把自己安装的软件在dalvik_cache对应的后缀为.dex文件重命名为.odex文件 然后把修改好的.odex文件移动到DATA中的APP里面[如果是复制过去的话 这里面.dex文件可以 ...

  4. Maven项目混淆、瘦身、打包exe

    项目混淆 ProGuard 是一个混淆代码的开源项目,它的主要作用是混淆代码,ProGuard 包括以下 4 个功能: 压缩(Shrink):检测并移除代码中无用的类.字段.方法和特性(Attribu ...

  5. .NET Core程序瘦身器发布,压缩程序尺寸到1/3

    .NET Core具有[剪裁未使用的代码]的功能,但是由于它是使用静态分析来实现的,因此它的剪裁效果并不是最优的.它有如下两个缺点: 不支持Windows Forms和WPF,而对于程序剪裁功能需求最 ...

  6. 微信小程序 自动解决分包大小问题_一个小小的优化,能让你的小程序瘦身10%...

    我司一直专注于微信小程序(以下简称小程序)开发,可以说是重仓押注在小程序上.但由于小程序的大小有严格的限制(单个分包/主包大小不能超过2M).而我们的业务又相对比较复杂,因此常常会突破小程序的大小限制 ...

  7. for循环c语言流水灯,巧用数组与for循环为流水灯程序瘦身

    数组--一种储存大量同性质数据的连续存储器空间 a [6]; b [] = {2,4,8,3,6}; c[6] = {1,2,3,4,5,6}; char d[6] = "hello&quo ...

  8. VS2010程序无错,编译后不出黑框

    三种解决办法 第一种:我愿意称只为最简单的办法: Ctrl+F5 第二种: 添加语句: getchar(): return 0: 第三种: 添加头文件+语句 #include <stdlib.h ...

  9. 我开发了一个对.NET程序进行瘦身的工具

    我开发了一个对.Net程序瘦身的工具,可以把被引用但是没有被使用的程序集删除.我用它把一个.Net core程序从147兆瘦身到59.5兆. .NET中发布程序的时候有对程序集进行剪裁的功能,但是那个 ...

  10. iOS安装包瘦身的那些事儿

    在我们提交安装包到App Store的时候,如果安装包过大,有可能会收到类似如下内容的一封邮件: 收到这封邮件的时候,意味着安装包在App Store上下载的时候,有的设备下载的安装包大小会超过100 ...

最新文章

  1. html 音乐播放透明,HTML如何设置video为不透明背景
  2. IDEA快捷键拆解系列(五):Navigate篇
  3. 在Linux下编写运行你的第一条代码——Hello Linux
  4. 浅析数据库case when 用法
  5. RESTful API实现APP订餐实例
  6. java实现modbus rtu协议与 modscan等工具(4)rtu转tcp
  7. wpa_supplicant配置
  8. 【Dongle】【数据库系统原理】模式分解之无损分解
  9. mro python_Python-MRO
  10. python你TM太皮了——区区30行代码就能记录键盘的一举一动
  11. 父盒子内子盒子居中的方法
  12. PHP获取用户浏览器信息
  13. 【C++】cout、cerr、clog之间的区别
  14. 2022年SCAU计算智能题库
  15. 福禄克LinkIQ™智能链路通线缆网络测试仪功能介绍
  16. 计算机基础实训评分标准,计算机实训考核办法细则.doc
  17. AngularJS vs. jQuery,看看谁更胜一筹
  18. 读俞敏洪老师自传有感
  19. Matter协议特性解析(三) 设备发现,认证和配网
  20. 电脑上带有日历的桌面便签记事软件

热门文章

  1. Android Studio插件GsonFormat快速实现JavaBean
  2. 忘记了Excel工作表保护密码的解决办法
  3. 中国运动草皮设备市场趋势报告、技术动态创新及市场预测
  4. 一行Python代码让图形秒变「手绘风」
  5. 我们不应该歧视任何的编程语言,因为他们都是萌娘
  6. python tests in xxx问题
  7. 【寒江雪】Go实现状态模式
  8. 自动删除QQ空间指定好友的留言
  9. oracle 11203 ora32701,love wife love life —Roger的Oracle/MySQL数据恢复博客
  10. 数字电路低电平有效逻辑和符号的理解