最近安装了delphi xe版,用vcl新建了一个form窗口,没放任何的组件,一编译exe文件尽然有900多K,吓了一跳啊。请问delphi高手,请教这是什么原因,有没有什么解决的好办法?

解决方案 »

  1.   

    用D7xe 都这么大
    要么你就不要用 VCL...  直接用API创建窗体 只有 16K
    可以用  UPX 或者 aspack 压缩一下 大概 400KB
      

  2.   

    楼主可以选择不打包所有的 BPL 
    这样大概就40KB不过运行的时候得安装运行库 BPL
      

  3.   

    不会吧,难道你的XE是水货??我用着很正常啊。别说是一个form,我放了四个,里面还N多控件,最后生成的才400多KB啊。
      

  4.   

    UPX压缩都报毒了 我2010写的 都不再加压缩壳了
      

  5.   

    XE2的话,能吓死你,一出来就是6M.
      

  6.   

    楼主还没用XE2吧。会吓死你!:-D
      

  7.   

    在工程代码的uses前加入下面代码
    { 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}例:
    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}
    uses
      Forms,
      Unit1 in 'Unit1.pas' {Form1},
      Unit2 in 'Unit2.pas';{$R *.res}begin
      Application.Initialize;
      Application.MainFormOnTaskbar := True;
      Application.CreateForm(TForm1, Form1);
      Application.Run;
    end.这种方法会小一点,但也不是很多,同求更好的解决方案
      

  8.   

    就是关闭RTTI
    http://topic.csdn.net/u/20090826/19/c26fea6c-01fe-440b-83bf-444c065c652c.html
    这里有说
      

  9.   

    那就改用低版本的Delphi或者使用UPX压缩
      

  10.   

    想减小很多不太可能,现在觉得 XE 的文件大小还能接受,XE2真的太大了一点。如果工程大一点,你就会发现 XE 比 D7 大不了多少。最好不要用UPX压缩,报毒
      

  11.   

    是不是Debug模式了?
    反正带Form的1M很正常
      

  12.   

    怕大看看XMLSPy去心理就平衡了。
      

  13.   


    一直以来都用UPX来压缩,10几M的压缩成几M的.