AGB  ·  Datenschutz  ·  Impressum  







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

Programm wird zu big

Ein Thema von HPB · begonnen am 22. Nov 2012 · letzter Beitrag vom 23. Nov 2012
Antwort Antwort
Seite 1 von 2  1 2      
HPB

Registriert seit: 2. Jun 2008
365 Beiträge
 
Delphi XE7 Professional
 
#1

Programm wird zu big

  Alt 22. Nov 2012, 16:59
Guten Tag Delphianer,
nachdem ich meinen Entwickler-Pc neu installiert habe, habe ich bei einem von mir
entwickeltem Programm, es ist eine Warenwirtschaft, nach dem Compilieren
des Programms eine Zunahme des EXE-Files um 100% festgestellt.
Waren es vorher ca. 22 MB, waren es nach dem Compilieren 45 MB.
Ich arbeite fast ausschließlich mit den TMS-Componenten-Pack.
Habe die Jedi-Komponenten installiert, von denen ich die eine oder andere auch einsetze.
Jeder Button in der Anwendung hat ein Picture von 32*32 und in der Hintanzeige von 16*16 Pixel.
Kann ich irgendeinen Schalter in den Projektoptionen setzen, damit die EXE-Datei wieder auf ein gesundes Maß
reduziert wird? Oder gibt es sonst noch Einstellungen die ich beeinflussen kann?
Mit Gruß
HPB
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.142 Beiträge
 
Delphi 12 Athens
 
#2

AW: Programm wird zu big

  Alt 22. Nov 2012, 17:04
Du kannst einiges an Debuginfos deaktivieren und es gibt auch vieles von der RTTI, was deaktiviert werden kann.

- die Debuginfos sind vorwiegend in den Projektoptionen zu finden
- bei der RTTI mußt'e mal suchen (war irgendwas mit {$RTTI ...} ... da gibt es schon mehrere Threads, bezüglich zu großer Dateien.

So einfach sollte sich da aber nichts von alleine ändern.
Hast du auch Änderungen an deinen Projektdateien? (z.B. *.dproj verloren und neu erstellt worden)
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (22. Nov 2012 um 17:07 Uhr)
  Mit Zitat antworten Zitat
HPB

Registriert seit: 2. Jun 2008
365 Beiträge
 
Delphi XE7 Professional
 
#3

AW: Programm wird zu big

  Alt 22. Nov 2012, 17:30
Du kannst einiges an Debuginfos deaktivieren und es gibt auch vieles von der RTTI, was deaktiviert werden kann.

- die Debuginfos sind vorwiegend in den Projektoptionen zu finden
- bei der RTTI mußt'e mal suchen (war irgendwas mit {$RTTI ...} ... da gibt es schon mehrere Threads, bezüglich zu großer Dateien.

So einfach sollte sich da aber nichts von alleine ändern.
Hast du auch Änderungen an deinen Projektdateien? (z.B. *.dproj verloren und neu erstellt worden)
Jetzt wo Du es ansprichst. Ich glaube ich kann mich erinnern, das ich ein Formular nicht öffnen konnte.
Habe die entsprechende DCU-Datei woanders hinkopiert. Beim erneuten Aufruf wird sie dann ja neu erstellt.
Aber kann es daran liegen?
Nach {$RTTI ...} werde ich mal suchen.
Vielen Dank für Deine Hinweise.
HPB
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.142 Beiträge
 
Delphi 12 Athens
 
#4

AW: Programm wird zu big

  Alt 22. Nov 2012, 18:08
DCUs selber sind grundsätzlich erstmal egal.
Das sind ja "nur" die kompilierten Versionen der PAS.
Ist die PAS da, kann die DCU weg.

Es sei denn du hattest ein Problem, der Compiler fand eine/mehrere PAS nicht und verwendete ständig die "alten" DCUs, anstatt neu zu kompilieren.
Dann kann sich das Löschen natürlich entsprechend auswirken, wenn man diese nun löscht. Der Vorteil ist aber, daß der Compiler nun entweder die PAS ordentlich kompiliert, oder zumindestens meckert, so daß man weiß daß da was nicht stimmt.





Die DCUs und Co. kannst du aber auch in ein Verzeichnis auslagern.
Ich hab bei mir z.B. oftmals
DCU-Ausgabeverzeichnis = ".\_dcu_$(Platform)_$(Config)"
EXE-Ausgabeverzeichnis = ".\_bin_$(Platform)_$(Config)"

Das ergibt dann ein Unterverzeichnis bei der Projektdatei von z.B. "_dcu_Win32_Debug", wo alle kompilierten DCUs landen. So kann man auch ganz schnell aufräumen, indem man dieses Verzeichnis löscht.

DCPs und DesignTime-BPLs landen in einem globalem Verzeichnis.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
HPB

Registriert seit: 2. Jun 2008
365 Beiträge
 
Delphi XE7 Professional
 
#5

AW: Programm wird zu big

  Alt 22. Nov 2012, 18:33
Richtig. Ich habe damals nicht die DCU gelöscht, sondern die entsprechende DFM-Datei.
Ich habe in den Projeckt-Optionen mal folgendes eingestellt:
Mit Debug-DCU = false
Debug-Informationen = false
Alle anderen Einstellungen sind Default-Einstellungen.
Aber trotzallem bleibt das Problem bestehen.
Mit Gruß
HPB
  Mit Zitat antworten Zitat
Benutzerbild von RWarnecke
RWarnecke

Registriert seit: 31. Dez 2004
Ort: Stuttgart
4.408 Beiträge
 
Delphi XE8 Enterprise
 
#6

AW: Programm wird zu big

  Alt 22. Nov 2012, 18:58
Mit welcher Option compilierst Du denn, mit Debug oder mit Release (Rechts in der Projektverwaltung) ?
Rolf Warnecke
App4Mission
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.142 Beiträge
 
Delphi 12 Athens
 
#7

AW: Programm wird zu big

  Alt 22. Nov 2012, 19:02
{$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])}

http://docwiki.embarcadero.com/RADSt...e_%28Delphi%29
Die lokale OH ist dafür leider zu blöd, bzw. der Index ist besch*.

Ob es da noch mehr gab, weiß ich jetzt nicht so auf Anhieb.
Wie gesagt, es gab schon mehrere Threads dazu ... müßte nur mal jemand danach suchen.


Ach ja, als Erstes kannst du immer erstmal in der Projektverwaltung die Build-Konfiguation auf Release umstellen.
XE2 hat mehrere Konfigurationen, welche weitgehend unabhängig voneinander eingestellt werden können und diese Beiden sind schon vordefiniert.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
HPB

Registriert seit: 2. Jun 2008
365 Beiträge
 
Delphi XE7 Professional
 
#8

AW: Programm wird zu big

  Alt 22. Nov 2012, 19:10
Mit welcher Option compilierst Du denn, mit Debug oder mit Release (Rechts in der Projektverwaltung) ?
Ich habe mal mit beiden Optionen Compiliert. Die EXE-Dateien unterscheiden sich dann geringfügig.
D.H. die EXE die mit Release erzeugt wurde ist ein klein Wenig kleiner.
Mit Gruß
HPB
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.142 Beiträge
 
Delphi 12 Athens
 
#9

AW: Programm wird zu big

  Alt 22. Nov 2012, 19:21
Hier im Forum suchenRTTI EXPLICIT METHODS

Und in einem meiner Programme hab ich Dieses gefunden:
Delphi-Quellcode:
{$ASSERTIONS OFF}
{$DEBUGINFO OFF}
{$LOCALSYMBOLS OFF}
{$REFERENCEINFO OFF}
{$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])}
{$WEAKLINKRTTI ON}
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.009 Beiträge
 
Delphi 12 Athens
 
#10

AW: Programm wird zu big

  Alt 22. Nov 2012, 21:05
nach dem Compilieren
des Programms eine Zunahme des EXE-Files um 100% festgestellt.
Waren es vorher ca. 22 MB, waren es nach dem Compilieren 45 MB.
Du erwähnst es nicht, aber sind beide EXE-Files mit der gleichen Delphi-Version compiliert worden?
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 18:07 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