AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi Wie bekomme ich die exe kleiner?

Wie bekomme ich die exe kleiner?

Ein Thema von NicoleWagner · begonnen am 27. Jan 2020 · letzter Beitrag vom 8. Feb 2020
Antwort Antwort
Seite 2 von 7     12 34     Letzte » 
noisy_master

Registriert seit: 17. Jun 2009
Ort: Wolfenbüttel/Baddeckenstedt
165 Beiträge
 
Delphi XE5 Professional
 
#11

AW: Wie bekomme ich die exe kleiner?

  Alt 28. Jan 2020, 08:23
Um meine Exen kleiner zu bekommen nehme ich mpress.
Reduziert die Größe um mehr als die Hälfte UND : der Große Vorteil gegenüber UPX ist, dass bisher KEIN Virenscanner darauf angeschlagen hat
Dirk
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.410 Beiträge
 
Delphi 10.3 Rio
 
#12

AW: Wie bekomme ich die exe kleiner?

  Alt 28. Jan 2020, 08:41
Exe Packer haben Nachteile, die nicht von der Hand zu weisen sind: Falsch positive durch Virenscanner mal außen vor, sorgen sie für eine ungünstige Arbeitsspeichernutzung. Und Arbeitsspeicher gibt es deutlich weniger als Plattenplatz. In diesem Thread wurde das bis zur totalen...äh... Abwendung vom Thema...mmmh, diskutiert: https://www.delphipraxis.net/192574-...oder-nein.html

Sherlock
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
35.431 Beiträge
 
Delphi 10.3 Rio
 
#13

AW: Wie bekomme ich die exe kleiner?

  Alt 28. Jan 2020, 09:29
Grad wenn man externe Komponenten wie Devexpress verwendet.
Und dort dann auch noch standardmäßig alle Skins mit reingeladen werden, egal ob man die alle benutzt.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
Delphi-Tage 2005-2014
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
7.608 Beiträge
 
Delphi XE4 Professional
 
#14

AW: Wie bekomme ich die exe kleiner?

  Alt 28. Jan 2020, 09:40
Hallo,
MadExcept verhindert schon mal das Komprimieren,
wohl, weil es da einen eigenen Memory-Manager gibt.
Heiko
  Mit Zitat antworten Zitat
NicoleWagner

Registriert seit: 6. Jul 2010
86 Beiträge
 
Delphi XE3 Professional
 
#15

AW: Wie bekomme ich die exe kleiner?

  Alt 28. Jan 2020, 10:02
Danke allen für die Antworten!
und besonders dem Delphi-"Laien" für die sorgsame Liste.
Ich werden die Tips einmal von oben nach unten ausprobieren.
Insb. das ganz naheliegende mit "release" hatte ich nicht bedacht, da ich keine Verkaufssoftware erstelle.

Cheryll
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
2.264 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#16

AW: Wie bekomme ich die exe kleiner?

  Alt 28. Jan 2020, 13:09
Insb. das ganz naheliegende mit "release" hatte ich nicht bedacht, da ich keine Verkaufssoftware erstelle.

Cheryll
Wieviel kleiner als 15 MB wurde es damit nun?
Hast du eine Zielgröße?
  Mit Zitat antworten Zitat
Rolf Frei

Registriert seit: 19. Jun 2006
208 Beiträge
 
Delphi 10.3 Rio
 
#17

AW: Wie bekomme ich die exe kleiner?

  Alt 28. Jan 2020, 13:20
Am meisten mach das aus:

{$SetPEFlags IMAGE_FILE_RELOCS_STRIPPED}

Das muss im DPR platziert werden, am besten nach den uses und vor dem {$R *.res}.

Dein 15 MB bringst du aber wohl kaum unter 10-12 MB egal was du machst. Seit RTTI aktiviert ist, ist leider die Grösse der Exe's explodiert. Also als Alternative könntest du dein Projekt auf z.B. D7 "downgraden" und dann wäre es vermutlich nur noch um die 7-8 MB gross.

Was willst du aber damit erreichen?
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
35.431 Beiträge
 
Delphi 10.3 Rio
 
#18

AW: Wie bekomme ich die exe kleiner?

  Alt 28. Jan 2020, 14:07
IMAGE_FILE_RELOCS_STRIPPED:

Und damit blockierst du gleich ein Sicherheitsfeature des Betriebssystems.
Dort werden (wenn aktiv) die DLLs/EXEn im RAM willkürlich verschoben, damit mit böse Häcker in ihren Viren/Trojanern/... nicht einfach mit statischen Adressen in fremdem RAM Programmcode umschreiben können, weil das Gewünschte dann ja jedes Mal wo anders liegt. (beliebt z.B. in Buffer Overflow Exploits)

Und für DLLs ist es auch noch fatal, wenn an dieser Adresse eine andere DLL oder die EXE bereits geladen ist und Windows somit deine DLL verschieben müsste, was es aber nicht mehr kann,
vor allem auch deswegen, weil kaum jemand die ImageBase definiert und 99,99% aller Delphi-DLLs und EXEn eigentlich auf der selben Adresse liegen. ($00400000)


Es gibt auch Progrämmchen und EXE-Packer, welche nachträglich diese Reallocation-Table entfernen.
(die ist dafür da, damit Windows beim Verschieben alle Zeiger im Code anpassen kann -> auf Prozeduren, Konstanten, Typen, globale Variablen, ...............)
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
Delphi-Tage 2005-2014

Geändert von himitsu (28. Jan 2020 um 14:17 Uhr)
  Mit Zitat antworten Zitat
freimatz

Registriert seit: 20. Mai 2010
713 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#19

AW: Wie bekomme ich die exe kleiner?

  Alt 28. Jan 2020, 14:09
Also als Alternative könntest du dein Projekt auf z.B. D7 "downgraden" und dann wäre es vermutlich nur noch um die 7-8 MB gross.
Und da gäbe es noch den MASM. SCNR
  Mit Zitat antworten Zitat
devidespe

Registriert seit: 7. Sep 2006
Ort: Berlin
423 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#20

AW: Wie bekomme ich die exe kleiner?

  Alt 28. Jan 2020, 16:08
Um meine Exen kleiner zu bekommen nehme ich mpress.
Reduziert die Größe um mehr als die Hälfte UND : der Große Vorteil gegenüber UPX ist, dass bisher KEIN Virenscanner darauf angeschlagen hat
Ohne die alte Diskussion über UPX wieder rauskramen zu wollen, kannst du auf www.virustotal.com
mit ca 70 Virenschutzprogrammen Dein Kompilat testen, und meine hochgeladenen Dateien, auch wenn mit UPX gepackt, wurden noch nie bemängelt.

Trotzdem danke für den Tipp mit mpress, werde ich mir genauer anschauen.
Devid
57 65 72 20 6C 65 73 65 6E 20 6B 61 6E 6E 2C 20 69 73 74 20 6B 6C 61 72 20 69 6D 20 56 6F 72 74 65 69 6C 21
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:34 Uhr.
Powered by vBulletin® Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2019 by Daniel R. Wolf