加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

减小Delphi的Exe文件大小

发布时间:2020-12-15 10:00:02 所属栏目:大数据 来源:网络整理
导读:一般来说,由Delphi生成的EXE文件,要比其由它编程语言生成的体积大一些。这主要是由于使用VCL的原因(当然,VCL是有许多优点的!)? 以下是减小EXE文件大小的几种途径:? 01) 使用加壳工具(如 UPX,ASPack 等)? 02) 使用 KOL? 03) 不使用VCL来编写程序? 0
一般来说,由Delphi生成的EXE文件,要比其由它编程语言生成的体积大一些。这主要是由于使用VCL的原因(当然,VCL是有许多优点的!)? 以下是减小EXE文件大小的几种途径:? 01) 使用加壳工具(如 UPX,ASPack 等)? 02) 使用 KOL? 03) 不使用VCL来编写程序? 04) 使用 ACL (API 控制库)? 05) 使用 StripReloc? 06) 去除运程调试信息与 TD32? 07) 把允许的代码写到 DLL 中? 08) 不要在设计时把图片放置在 Form 上,而是运行时加载? 09) 使用被压缩的图片(使用JPG 而不用 BMP)? 10) 在 DFM 文件中减少属性? (参考后面的链接 “怎样使您的EXE文件更轻便”)? 11) Use the TStringList replacement by ~LOM~? Use the Minireg - TRegistry replacement by Ben Hochstrasser? 01)? UPX 是一个免费、轻便、可扩展和高性能的可执行文件加壳工具,支持多种不同的可执行文件格式。它可以达到非常优秀的压缩比,且可以非常快的解压。? http://upx.sourceforge.net/? ASPack 是一款高级的Win32可执行文件压缩器,可以减小32位Windows程序的大小达70%。(ASPack的压缩率提高了zip文件格式产业标准10-20%) ASPack使得Windows 95/98/NT 程序与库更小,降低了网络的传输量。它也可以在一定程度上保护程序免受那些非专业黑客的反向工程。压缩后的程序在运行时基本上没有什么性能上的影响。? http://www.aspack.com/aspack.htm? {****************************************************************}? 02)? KOL - (关键对象库 Key Objects Library)是用于 Delphi 开发强大的32位Windows图形用户界面应用程序一套对象库。它比用VCL进行开发可以使程序变得更小。? http://bonanzas.rinet.ru/? {****************************************************************}? 03)? 不使用VCL? 如果您想要实现瘦小的EXE文件,就不要使用VCL,Delphi 完全可以让您通过调用WinAPI函数来实现Delphi 100%的丰富功能。? http://nonvcl.luckie-online.de/? http://www.erm.tu-cottbus.de/delphi/stuff/Tutorials/nonVCL/index.html? http://www.swissdelphicenter.ch/en/delphizeus? http://www.tutorials.delphi-source.de/nonvcl/? {****************************************************************}? 04)? ACL (API 控制库 API Controls Library)? 纯以API写程序是完全可能的,但我希望达到两个目的 —— 写出瘦小程序和生成新的控制库,在写程序的时候,也就创建了我自己的TWinControl和全部标准的Windows控制类.? http://www.apress.ru/pages/bokovikov/delphi/index.html? {****************************************************************}? 05)? StripReloc是一个免费的(GPL 许可协议) 命令行应用程序,用于移去Win32 PE格式文件多余的重配区段(".reloc") ,以减小它们的大小。大多数编译器/链接程序(包括Delphi)会在EXE文件里写入重配区段,但由于EXE文件从不会重新部署,所以该区段只会浪费空间。? http://www.jrsoftware.org/striprlc.php? {****************************************************************}? 06)? 去除调试信息? Debug信息会占用一部分空间的,对于最终的发行版,完全可以不要这部分信息 。? Delphi IDE菜单? ? ? project-Options-Compiler - Debugging 与? ? ? project- Options - Linker - EXE and DLL options? 去掉下面两项,可以减少文件的大小? "Include TD32 debug info" 与 "Build with runtime packages".? {****************************************************************}? 08/09)? 对于图片? 最好不要在设计期把图片加到窗体,尤其是大的图片,因为这样以来,Delphi会把图片也编译到你的可执行文件中去,从而增大EXE文件的尺寸。建议在运行时,以代码的方式,实时的载入图片。? {****************************************************************}? 10)? 怎样使您的EXE文件更轻便:? http://www.undu.com/DN970301/00000064.htm? {****************************************************************}? 11)? TStringList replacement by ~LOM~? Minireg - TRegistry replacement? Trackback地址: http://www.yculblog.com/trackback/4/340843

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读