AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

EXE kleinstmöglich machen

Ein Thema von freejay · begonnen am 4. Aug 2006 · letzter Beitrag vom 5. Aug 2006
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    
freejay

Registriert seit: 26. Mai 2004
Ort: Nürnberg
272 Beiträge
 
Delphi 11 Alexandria
 
#1

EXE kleinstmöglich machen

  Alt 4. Aug 2006, 17:53
Hallo,

bisher hat mich die Größe meiner EXEn ja nicht wirklich interessiert, aber im Moment entwickeln wir ein Programm, dass über das Internet upgedatet werden muss. Und da es noch etliche User mit Modemzugang gibt, sollte die EXE kleinstmöglich sein.

Ich habe mal ein leeres Projekt erstellt (ein Fenster mit einem CLOSE-Button) und da hat die EXE bereits knapp 400 kB! Und unsere Schmerzgrenze war eigentlich ca. 300 kB...

Daraufhin habe ich alle Compileroptionen für Debug-Informationen ausgeschaltet und erwartet, dass die EXE deutlich kleiner wird: Sie ist aber nach erneutem Kompillieren exakt genauso groß, wie mit eingeschalteten Debug-Infos!

Wie kann ich denn die EXE "kleinkriegen"?

Gruß

Andreas
  Mit Zitat antworten Zitat
fwsp
(Gast)

n/a Beiträge
 
#2

Re: EXE kleinstmöglich machen

  Alt 4. Aug 2006, 17:58
da musst du non-vcl proggen.
  Mit Zitat antworten Zitat
freejay

Registriert seit: 26. Mai 2004
Ort: Nürnberg
272 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: EXE kleinstmöglich machen

  Alt 4. Aug 2006, 18:00
und wie soll ich das machen, wenn das Programm eine grafische Benutzeroberfläche haben soll...
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: EXE kleinstmöglich machen

  Alt 4. Aug 2006, 18:00
Als erstes mal: nonVCL Programmierung. Hilft ungemein.

Als nächstes: unnötige Units aus dem uses nehmen. Hilft auch bissel was.

Dann als letztes: Du schreibst sämtliche Delphi Standard Units neu, und zwar als z.B. MySysUtils. Das hilft extrem viel, wenn du nur das reinschreibst, was du auch wirklich brauchst.

EDIT: Schau dir Luckies WinAPI Tutorial an.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#5

Re: EXE kleinstmöglich machen

  Alt 4. Aug 2006, 18:03
Du kannst sie mit UPX (oder inenem anderen exe-packer) packen - die komprimierung ist aber höchstens genausogut wie ein 7zip-sfx (http://7-zip.org), und außerdem gibt es einige nachteile (dei hier schon zu genüge besprochen wurdne, einfach mal nach upx suchen)

Viel besser wäre es, ganz einfach differenzielle Patches zu erstellen. Z.B. Hier im Forum suchenVPatch (weiss nicht, ob man da in der DP noch was findet).
ansosnten kannst du NonVCL programmieren. Luckie hat da ein paar tutorials - http://www.michael-puff.de/dirindex....phi/Tutorials/ - win32api-tutorials müsste es sein.

Du verzichtest dann auf VCL-Kompoentne und erstellst die deine fenster und Controls selber, mit Hilfe der WinAPI.

Damit kann man extrem kleine Programme schreiben.

Ansonsten wäre natürlcih ein kompletter Verzicht auf GUI möglich, oder das auslagern der programmlogik (die dann alleine geupdated wird) in eine DLL (mit statischer Linkung ziemlcih bequem möglich).

Was für dich das beste ist, kann man am besten herausfinden, wenn du kurz erklärst, was dein Programm genau machen soll.
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
Benutzerbild von faux
faux

Registriert seit: 18. Apr 2004
Ort: Linz
2.044 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: EXE kleinstmöglich machen

  Alt 4. Aug 2006, 18:03
Desweiteren könntest du Programmteile die du oft Updaten willst/musst in DLLs auslagern.

Grüße
Faux
Faux Manuel
Wer weiß, dass er nichts weiß, weiß mehr, als der der nicht weiß, dass er nichts weiß.
GoTrillian
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: EXE kleinstmöglich machen

  Alt 4. Aug 2006, 18:05
Oder alles in Runtimepackages.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
freejay

Registriert seit: 26. Mai 2004
Ort: Nürnberg
272 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: EXE kleinstmöglich machen

  Alt 4. Aug 2006, 18:15
Ok, das schockiert mich alles ganz schön: reine API generierte Oberflächen? Ich will doch das Rad nicht neu erfinden! Aber wenn's nicht anders geht...

Trotzdem natürlich vielen Dank bis hier hin!

Dennoch nochmals nachgefragt: Müsste die EXE nicht kleiner werden, wenn man die Debug-Informationen rausnimmt?
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#9

Re: EXE kleinstmöglich machen

  Alt 4. Aug 2006, 18:19
Übrigens: Das Rad neu erfindent ist leicht übertrieben. Schau dir mal ein C(++) Programm an, da ist alles nonVCL. Die VCL ist nunmal benutzer(programmierer)freundlich, aber dafür auch groß und etwas langsamer.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.195 Beiträge
 
Delphi 10.4 Sydney
 
#10

Re: EXE kleinstmöglich machen

  Alt 4. Aug 2006, 18:23
Oder du entwickelst für .NET und dann sind deine Anwendungen winzig. Der Anwender muß jedoch auf seinen Rechner erst mal die passende .NET-Version haben. Und dies ist ein ganz schöner Brocken.
Aber mittlerweile hat ein überwiegender Teil der aktuellen PC's .NET 1.1 oder auch schon 2.0 drauf.
Ist damit ähnlich wie Delphi für Win32 und Runtimepackages.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    


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 05:08 Uhr.
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