AGB  ·  Datenschutz  ·  Impressum  







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

BPL zu runtimelib zusammenfassen

Ein Thema von hanspeter · begonnen am 23. Feb 2010 · letzter Beitrag vom 24. Apr 2010
Antwort Antwort
hanspeter

Registriert seit: 26. Jul 2003
Ort: Leipzig
1.350 Beiträge
 
Delphi XE2 Professional
 
#1

BPL zu runtimelib zusammenfassen

  Alt 23. Feb 2010, 14:44
Hallo,

ich hatte mich schon mehrmals geärgert, das unter D2010 compilierte EXE derartig aufgebläht sind.
Jetzt habe ich einen der Übeltäter durch Zufall gefunden. TMS-Software.
Beim Verwenden von TMS-Componenten wird die Exe meiner Programms um 8 bis 12 Mbyte größer.

Beispiel Programmgröße 15,8 Mbyte. TMS tmsd2010 und tmsexd2010 als Laufzeitmodul Exe-File 7,2 MByte.

Um der BPL Hölle zu entgehen möchte ich gerne eine Laufzeitbibliothk erzeugen, welche alle immer benötigten bpl enthält.
Dazu habe ich eine "CoreBPL" erzeugt mit dem Eintrag

Delphi-Quellcode:
requires
  vclx, vcl,rtl,vclimg,dbrtl,vcldb,vcldbx,xmlrtl, CRControls140,dac140,
  ibdac140,tmsd2010,tmsexd2010,vclib,dacvcl140,ibdacvcl140;
Meine erzeugte bpl ist jedoch nur ca 900 byte groß.
Irgendwie stehe ich auf dem Schlauch.
Ich meine, das ich das unter D7 schon mal hinbekommen habe.
Wie bekomme ich es hin, die aufgezählten Module in die Corebpl einzubinden?
Ich möchte nur die Programme und die meinetwegen 20Mbyte große Corebpl ausliefern.
Damit würde ich mir einigen Versionsärger ersparen, da ich die Corelib manuell compilieren kann und nur bei Bedarf ausliefere,

Für einen Tip dankbar.

Gruß Peter
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

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

Re: BPL zu runtimelib zusammenfassen

  Alt 23. Feb 2010, 14:55
Zitat von hanspeter:
Beim Verwenden von TMS-Componenten wird die Exe meiner Programms um 8 bis 12 Mbyte größer.
Hast du schon mal probiert die erweiterte RTTI für dein Proramm (soweit es geht) abzuschalten). Dies ist die Ursache wieso D2010-Exes viel größer werden.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
hanspeter

Registriert seit: 26. Jul 2003
Ort: Leipzig
1.350 Beiträge
 
Delphi XE2 Professional
 
#3

Re: BPL zu runtimelib zusammenfassen

  Alt 23. Feb 2010, 22:08
Zitat von Bernhard Geyer:
Hast du schon mal probiert die erweiterte RTTI für dein Proramm (soweit es geht) abzuschalten). Dies ist die Ursache wieso D2010-Exes viel größer werden.
Habe ich gerade mal ausprobiert. Bringt nicht sehr viel.

Programmgröße mit RTTI 14,486 Mbyte.
Programmgröße ohne RTTI 11,918 Mbyte.

Wenn ich von TMS Software die BPL "tmsd2010" als Laufzeitbibliothek verwende,
verringert sich der Speicherbedarf dramatisch.

Programmgröße mit RTTI 7,918 Mbyte.
Programmgröße ohne RTTI 6,412 Mbyte.

Und meine Vorstellung eine "Core" BPL als Laufzeitumgebung zu verwenden, scheint von D7 nach D2010 wohl auf der
Strecke geblieben zu sein.
In Delphi 7 gab es noch einen Bibliothekseditor.
Dort hatte ich in der BPL einfach alle benötigeten DCU unter contains aufgezählt und konnte compilieren.

Jetzt kommt eine Warnung das zur Programmkompatibilität unter requires die Bibliothek eingefügt werden muss.
Danach werden automatisch die Einträge unter contains gelöscht.

Falls nicht wer eine andere Idee hat, scheint das wohl nicht mehr zu funktionieren.
Könnte mit den dcl zusammenhängen.

Gruß Peter
  Mit Zitat antworten Zitat
pixfreak

Registriert seit: 6. Jul 2007
112 Beiträge
 
Delphi XE3 Professional
 
#4

Re: BPL zu runtimelib zusammenfassen

  Alt 24. Apr 2010, 06:07
Hallo zusammen, Hallo Peter,

gibt es zu dieser Fragestellung nun eine Lösung? Die würde mich auch interessieren.


VG Pixfreak
  Mit Zitat antworten Zitat
hanspeter

Registriert seit: 26. Jul 2003
Ort: Leipzig
1.350 Beiträge
 
Delphi XE2 Professional
 
#5

Re: BPL zu runtimelib zusammenfassen

  Alt 24. Apr 2010, 09:34
Zitat von pixfreak:
Hallo zusammen, Hallo Peter,

gibt es zu dieser Fragestellung nun eine Lösung? Die würde mich auch interessieren.


VG Pixfreak
Eher nicht.
Ich habe jetzt einen Teil der Laufzeitbibliothek als runtime BPL verwendet.
Die auszuliefernden EXE sind bis zu 10 Mbyte kleiner geworden (ca. 70 - 80%).
Desweiteren habe ich einige Module auf das Pluginsystem Hydra von Remobjects umgestellt.

Mehrfach benötigte Programmteile wie Reportgenerator u.s.w. habe ich als Comserver ausgelagert.
Mit Hydra als Pluginsystem habe ich gute Erfahrungen gemacht. Es besteht die Möglichkeit
einer Interaktion zwischen Delphi und Net.
D.h. Delphi Module können aus Net und Net Module können in Delphi verwendet werden.
Neue Module möchte ich jetzt im Net-Framework entwickeln.
Delphi ist halt die Technologie des vorigen Jahrhunderts und dll/BPL sind veralterte Technologien,
mit enormen Pferdefüßen.
Daran wird wahrscheinlich auch ein neuer Compiler nichts ändern.

Gruß Peter
  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 02:37 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