一般用两个方法可以很大程度上减少程序体积
禁用的方法很简单(点中 EXE,按 Ctrl + V 或者单击鼠标右键,点 View Source
),一般在工程 的 Uses 语句前添加下面的定义:
{ Reduce EXE size by disabling as much of RTTI as possible Delphi} {$IF CompilerVersion >= 21.0} {$WEAKLINKRTTI ON} {$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])} {$IFEND}
完整的 Delphi 代码示例如下:
program NotePad; { Reduce EXE size by disabling as much of RTTI as possible Delphi} {$IF CompilerVersion >= 21.0} {$WEAKLINKRTTI ON} {$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])} {$IFEND} uses Vcl.Forms, FormMain in 'FormMain.pas' {frmMain}; {$R *.res} begin Application.Initialize; Application.MainFormOnTaskbar := True; Application.CreateForm(TfrmMain, frmMain); Application.Run; end.
Project -> Options -> Delphi Compiler -> Linking -> Debug Information
设置为 False
即可
上一节 NotePad Demo 入门 Exe 最终生成结果分别如下:
11.2MB
1.85MB
配置如图: