简体   繁体   English

与XE2相比,Delphi XE5 dll和exe文件大小

[英]Delphi XE5 dll and exe filesize comparing to XE2

I have recently purchased XE5 and migrated from XE2. 我最近购买了XE5,并从XE2迁移了。 I have tried to compile a dll. 我试图编译一个dll。 With XE2 this dll filesize is 400KB but with XE5 it is 1.1MB. 使用XE2,此dll文件大小为400KB,而使用XE5,则为1.1MB。 Also Executable file sizes are higher. 可执行文件的大小也更高。 I am compiling exactly the same project. 我正在编译完全相同的项目。

So does anyone know what causes that much high file size? 那么,有谁知道导致这么大文件大小的原因吗? You may say the size is not that important these days but actually it is for me. 您可能会说,这些天的大小并不重要,但实际上对我来说很重要。

XE5 has some RTL and VCL features and changes that XE2 is lacking. XE5具有一些RTL和VCL功能以及XE2缺少的更改。 That is the usual growth that we see with every Delphi version. 这是我们在每个Delphi版本中看到的通常的增长。 And from XE2 to XE5 you have XE3 and XE4 between. 从XE2到XE5,您之间会有XE3和XE4。 That makes a difference of 3 Delphi versions. 这使3个Delphi版本有所不同。

Another size increasing change is the move from plain TList to the generic TList< T >. 另一个增加大小的更改是从普通TList到通用TList <T>的迁移。 Now instead of just the code for TList you have the code for TList< TCollectionItem >, TList< TComponent >, TList< TObject >, TList< TAction >, ... They all generate the exact same code, because TList< T > can't do much with T that differs from T=TObject, but the compiler doesn't collapse them into one code base. 现在,不仅仅是TList的代码,还有TList <TCollectionItem>,TList <TComponent>,TList <TObject>,TList <TAction>,...的代码,它们都生成完全相同的代码,因为TList <T>可以T与T = TObject的区别不大,但是编译器不会将它们折叠为一个代码库。 And the generic TList< T > brings a lot more code with it than TList. 通用的TList <T>带来的代码比TList多得多。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM