AGB  ·  Datenschutz  ·  Impressum  







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

Größe Exe-Datei XE2 -> XE4

Ein Thema von Bernhard Geyer · begonnen am 24. Apr 2013 · letzter Beitrag vom 17. Aug 2014
Antwort Antwort
UliBru

Registriert seit: 10. Mai 2010
155 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: Größe Exe-Datei XE2 -> XE4

  Alt 25. Apr 2013, 08:35
Die RTTI-Infos benötigst Du genau dann, wenn Du zur Laufzeit dynamisch auf Deine Objekte zugreifen möchtest.
...
Der Moment, in dem Du Dich fragst, wozu das gut ist, sollte schon ein hinreichendes Indiz dafür sein, dass Du es nicht verwendest, denn sonst wüsstest Du es. (Stark verkürzte Aussage, ich weiß ...)
Ich weiss für mich in diesem Sinn wohl, dass ich da selbst keine RTTI-Info verwende. Ich weiss aber nicht, ob da nicht in einer der verwendeten Bibliotheken vielleicht jemand davon Gebrauch macht. Kann man das feststellen?

Grüsse
Uli
Er wollte so richtig in Delphi einsteigen. Nun steckt er ganz tief drin ...
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.213 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Größe Exe-Datei XE2 -> XE4

  Alt 25. Apr 2013, 09:30
Ich weiss für mich in diesem Sinn wohl, dass ich da selbst keine RTTI-Info verwende. Ich weiss aber nicht, ob da nicht in einer der verwendeten Bibliotheken vielleicht jemand davon Gebrauch macht. Kann man das feststellen?
Die Basis-RTTI ist zwingend nötig. Sonst könnte die Exe die Formulare aus den dfm's nicht mehr herstellen.

Bei der erweiterten RTTI wird es darauf ankommen welche Minimale Delphi-Version sie unterstützt. Falls D7 dabei ist wird sie nicht benötigt.
Ansonsten mal den Hersteller fragen. Dieser sollte über IFOPT-Abfraggen entsprechende Compilerfehler erzeugen falls er sie benötigt aber nicht vorhanden sind.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.190 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

AW: Größe Exe-Datei XE2 -> XE4

  Alt 16. Mai 2013, 13:59
Gerade XE4 installiert, das gleiche Projekt ist (Debug-Fassung) ist von XE2 auf XE4 von 8,44 auf 11,8MB gewachsen. Nicht dass es mich stören würde, aber schon heftig...
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.039 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#4

AW: Größe Exe-Datei XE2 -> XE4

  Alt 16. Mai 2013, 17:05
Die Benutzung von Generics in der RTL (glaube ab XE3) äußert sich nunmal in einer größeren Binary.
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
Benutzerbild von MEissing
MEissing

Registriert seit: 19. Jan 2005
Ort: Egelsbach
1.384 Beiträge
 
Delphi 12 Athens
 
#5

AW: Größe Exe-Datei XE2 -> XE4

  Alt 16. Mai 2013, 19:02
http://blogs.embarcadero.com/matthia...13/04/26/38698
Matthias Eißing
cu://Matthias.Eißing.de [Embarcadero]
Kein Support per PN
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.190 Beiträge
 
Delphi 10 Seattle Enterprise
 
#6

AW: Größe Exe-Datei XE2 -> XE4

  Alt 16. Mai 2013, 19:13
Danke.

Aber wie gesagt, mich stört es nicht. Ich bin nur neugierig, was sich denn von XE2 auf XE4 in einer reinen Win32-Anwendung ohne FM geändert haben könnte. Was sollte sich denn bei den Generics noch geändert haben?
  Mit Zitat antworten Zitat
jbg

Registriert seit: 12. Jun 2002
3.483 Beiträge
 
Delphi 10.1 Berlin Professional
 
#7

AW: Größe Exe-Datei XE2 -> XE4

  Alt 16. Mai 2013, 22:12
Bei den Generics hat sich geändert, dass ab XE3 die RTL und VCL von TList/TObjectList auf TList<Alle möglichen Klassen> umgestellt wurde. Das bedeutet, dass statt der einen TList/TObjectList Klasse nun um einiges mehr TList<T> herumschwirren, da der Compiler für jedes T eine eigene Kopie anfertigt.

Was früher eine einzige TList mit Typecasts war, ist jetzt TList<TAction>, TList<TComponent>, TList<TField>, TList<...>, ...

Codegenerier-technisch könnte man all die Listen wieder zu einer zusammenfassen, da keine dieser auf irgendwelche speziellen Eigenschaften der Klassen zugreift, also alle mit einem TList<TObject> abbildbar wären. Ein harter Typecast ist nämlich in wirklichkeit nur eine Uminterpretation der Daten, was in Fall von Objekt-Referenzen zu keinem einzigen Maschinencode-Byte führt.
Aber das wollen die für den Compiler Verantwortlichen nicht implementieren.
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.039 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#8

AW: Größe Exe-Datei XE2 -> XE4

  Alt 17. Mai 2013, 00:25
Zitat von Matthias Eissing:
Weiß man nicht, was RTTI ist, kann man das auch ausschalten.
Falsch - genau das Gegenteil ist der Fall. Man muss nämlich sehr genau wissen, was RTTI ist, und ob irgendein Code in der Anwendung diese benötigt.
Inzwischen wird nämlich in vielen unterschiedlichen Teilen diese oft genutzt - einige Beispiele wären: Serialisierung, ORM, DI und *trommenwirbel* LiveBindings.
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
Benutzerbild von MEissing
MEissing

Registriert seit: 19. Jan 2005
Ort: Egelsbach
1.384 Beiträge
 
Delphi 12 Athens
 
#9

AW: Größe Exe-Datei XE2 -> XE4

  Alt 17. Mai 2013, 07:26
Zitat von Matthias Eissing:
Weiß man nicht, was RTTI ist, kann man das auch ausschalten.
Falsch - genau das Gegenteil ist der Fall. Man muss nämlich sehr genau wissen, was RTTI ist, und ob irgendein Code in der Anwendung diese benötigt.
Inzwischen wird nämlich in vielen unterschiedlichen Teilen diese oft genutzt - einige Beispiele wären: Serialisierung, ORM, DI und *trommenwirbel* LiveBindings.
...du hast ein prominentes Beispiel vergessen: DataSnap.

Aber "Danke" für die "zielgerichtete Klarstellung".
Matthias Eißing
cu://Matthias.Eißing.de [Embarcadero]
Kein Support per PN
  Mit Zitat antworten Zitat
Antwort Antwort


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 06:49 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz