冥界3大法王 发表于 2019-12-5 10:13

Delphi10.3.1优化技巧,超级胖猪秒变苗条少女。

本帖最后由 冥界3大法王 于 2019-12-5 11:00 编辑

@bester
Project->options->Linking->debug information 设置为False
Project->options->Packages->RunTime Packages->Link with runtime packages->True
project-Options-Compiler - Debugging全不勾
project- Options - Linker - EXE and DLL options

Project->View Source:第二行粘入下面的代码
program project1;
{ 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}


未优化前源文件16M,优化后800多K
upx --best 一下,最后只剩下500-600K了


过多的使用外部插件也是导致体积变大的原因,
比如使用了MlSkin,拖入一个控件,就会引入三个声明调用;删除时就会发现并不是想的那样只要1个。
开启Link with runtime packages后这样插件调用编译!就会报错!根据错误提示复制所要的那个文件,可用Everything来定位。
比如:MlSkinVCLRio.bpl到EXE同名目录下,当然加上这个文件,就会又多10多M了。话说好看也是是付出代价的。
以上是我从网上找到的,自己试过很多次得到的结果。
为方便以后再次快速使用,可以把当前Delphi工程文件夹复制一份

貌似还真没有好的导出设置的地方。{:301_1008:}

炎火焱 发表于 2021-9-14 16:19

总是提示 : E2202 Required package 'MlSkinVCLRio' not found
不想装这个控件,想删除引用却找来找去没找到,刚从 Delphi7上来,还不熟悉,谁告诉我一下怎么处理

冥界3大法王 发表于 2019-12-5 16:09

bester 发表于 2019-12-5 12:43
这么搞以后还能单独运行吗

@bester 当然可以了。下载压缩包,复制使用即可。简单方便。

yulinsoft 发表于 2019-12-5 10:33

xinyuguy 发表于 2019-12-5 10:52

现在 已经是 10.3.3了更新了 很多 请使用 最新版本

bester 发表于 2019-12-5 12:43

这么搞以后还能单独运行吗

mokson 发表于 2019-12-5 20:36

Tairraos 发表于 2019-12-5 22:01

原来Delphi还活着啊

alter0001 发表于 2019-12-6 07:37

不把库打包进去, 分发就需要写个安装程序了。

lonm 发表于 2019-12-19 10:49

还在用delphi5 的飘过

nshark 发表于 2019-12-26 19:34

好久不用了,想想真是怀念。
页: [1] 2 3
查看完整版本: Delphi10.3.1优化技巧,超级胖猪秒变苗条少女。