Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   EXE-Größe (https://www.delphipraxis.net/161860-exe-groesse.html)

Neumann 25. Jul 2011 05:41

EXE-Größe
 
Hallo,

habe gestern ein merkwürdiges Phänomen festgestellt.

Bin gerade dabei, ein vorher mit D2006 entwickelte Anwendung auf D XE zu portieren. Dies geht auch soweit; die Größe der EXE ist dabei von knapp 10 MB auf rund 14 MB gewachsen, was sich durch Unicode, Verwenden von TMS-Smoothcontrols usw. sicher begründen lässt.

Bei der Weiterentwicklung ohne wirklich gravierende Veränderungen ist die Größe der EXE plötzlich auf 33 MB angestiegen. Leider kann ich nicht genau sagen wann und warum. Debug-Infos an/abschalten bringen keine wesentlichen Änderungen.

Die Summe der DCUs ist etwa 10 MB. Der Project-Analyser gibt folgende Zusammenfassung:

Units: 629, Forms: 159, Code: 10213600, ICode: 182376, Data: 116260, Bss: 563564, Resources: 3136512

Das entspricht wieder 14 MB.

Warum die 33 MB? Diese Größe ist schon lästig, da das Programm oft per Fernwartung übertragen werden soll.

jaenicke 25. Jul 2011 06:15

AW: EXE-Größe
 
Bist du sicher, dass du das richtige Häkchen weggenommen hast? Es gibt zweimal das Häkchen Debuginformationen, einmal unter Compilieren, einmal unter Linken.

Das Entscheidende für die Größe der Exe ist das unter Linken!

Neumann 25. Jul 2011 06:28

AW: EXE-Größe
 
Ja die Häckchen sind raus. Auch die Infos geben nicht plausible Angaben:

Codegrösse: 10,4 MB
Datengrösse: 0,6 MB

Dateigröße 35 MB

Alle Werte gerundet.

jaenicke 25. Jul 2011 06:56

AW: EXE-Größe
 
Sonst fiele mir nur mehr ein die .dcu Dateien und die .exe zu löschen und dann das Projekt neu zu erstellen.

Ich schaue mir mal an wie die Analysedaten sich bei mir zu der Dateigröße verhalten. (Auf dem Handy unterwegs geht das grad nicht gut.)

Bernhard Geyer 25. Jul 2011 07:08

AW: EXE-Größe
 
Zitat:

Zitat von Neumann (Beitrag 1113377)
Ja die Häckchen sind raus.

Es ist ein kompletter Rebuild nötig damit die Änderungen auch wirklich komplett für alle Units angewendet sind und die Exe-Größe entsprechend sich ändert.

Phoenix 25. Jul 2011 07:37

AW: EXE-Größe
 
XE hat gegenüber Delphi 2006 die erweiterte RTTI. Die bläht die .Exe auch nochmal etwas auf.

Neumann 25. Jul 2011 07:48

AW: EXE-Größe
 
Habe ich alles gemacht. DCUs gelöscht, immer komplett neu erstellt.

Die extreme Änderung der EXE Größe kam nicht sofort nach Portierung das ergab eine Änderung von 9,5 auf 13 MB,wie ich schon geschrieben habe. Damit kann ich klar kommen. Aber 35 MB sind mir zu viel.

mleyen 25. Jul 2011 08:55

AW: EXE-Größe
 
Das steht bei mir in nahezu jeder *.dpr:
Delphi-Quellcode:
{$IF CompilerVersion >= 17.0} 
  {$SetPEFlags 1} // 1 = Windows.IMAGE_FILE_RELOCS_STRIPPED
{$IFEND}

{ 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}
:-D:-D

(über den uses)

jaenicke 25. Jul 2011 09:09

AW: EXE-Größe
 
Wobei man da natürlich aufpassen muss, ob man die benutzt oder benutzen will. Hier wird das sicher nicht der Fall sein, aber bei einigen Tools, an denen ich arbeite, wären diese Zeilen vermutlich tödlich. ;-)

Neumann 25. Jul 2011 09:13

AW: EXE-Größe
 
Die Direktiven mache die EXE 3 MB kleiner, also immer noch 32 MB.

Habe mal ein anderes Projekt untersucht, da ist die Codegröße + Datengröße etwa die Größe der EXE.

Sollte sich immer ein 20 MB großer Virus an meine EXE hängen? Kommt mir wenig wahrscheinlich vor.


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:33 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz