Programmgröße (Datei in KB) reduzieren
-
Hallo,
ich habe aus meinem Programm sehr viel Code gelöscht und mir fiel auf dass die EXE nach dem Compilieren noch exakt die gleiche Größe in KB hatte.
Ich will jetzt nicht das Programm ganz neu aufbauen um die Größe zu reduzieren.
Weiß jemand wie man das in Griff bekommt?
mike
-
Also bei dem BCB werden ja die VCL Bibliotheken mit gelinkt dadurch haben die Programme schon eine gewisse Grundgrösse, selbst wenn DU nur ein leeres Formular benutzt.
Es gibt ein Programm das praktisch die Exe kompriiert und beim ausführen wieder entpackt, ich weiss den Namen gerade aber nicht. Stand aber schon öfters hier im Forum.
das Programm hat aber den Nachteil das die Exe komplett in den Speicher entpackt wird und noch einige andere bringt aber einiges an KB von der Grösse.Eine weitere Möglichkeit ist die Bibliotheken nicht Statisch mitzulinken, allerdings musste dann auch wieder die Bibliotheken mit auf den Zielrechner installieren lassen.
Nachteil hier, wie gesagt Bibliotheken müssen mitinstalliert werden bzw vorhanden sein. Wenn es ein Programm für nur eine bestimmte Zielgruppe ist (Kundenauftrag oder so) ist es nicht das Problem allerdings wenn Du dein Programm z.B. Frei auf deiner Homepage anbietest muss halt jeder zusätzlich diese Bibliotheken haben oder extra herunterladen.
Das ganze ist ähnlich wie bei Basic Programmen mit den VBRuntime Bibliotheken.
Am kleinsten bekommst Du ein Programm wenn Du pure WinApi benutzt und ganz auf VCL verzichtest da haste denn, je nach Umfang deines Programms nur einige 100 KB gegenüber einem BCB Programm mit einigen MB.
-
Es gibt auch die Möglichkeit, einen EXE-Kompressor (such mal nach "upx" hier im Forum) einzusetzen. Damit kannst du die fertig kompilierte Datei verkleinern und sie lässt sich noch immer ausführen.
-
Fox-Alpha schrieb:
Es gibt ein Programm das praktisch die Exe kompriiert und beim ausführen wieder entpackt, ich weiss den Namen gerade aber nicht.
Z.B. das von Dasd erwähnte UPX, oder auch das kommerzielle AsPack.
das Programm hat aber den Nachteil das die Exe komplett in den Speicher entpackt wird und noch einige andere [...]
Auch ein ungepacktes Programm wird komplett in den Speicher geladen, da gibt es keinen Unterschied. Und von sonstigen Nachteilen ist mir auch nichts bekannt, sieht man mal von der unvermeidlichen, aber minimalen Verzögerung durch das Entpacken beim Programmstart ab.