AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Problem mit GetClass in stat. App bei dyn. geladenen Package
Thema durchsuchen
Ansicht
Themen-Optionen

Problem mit GetClass in stat. App bei dyn. geladenen Package

Ein Thema von MaBuSE · begonnen am 23. Okt 2008 · letzter Beitrag vom 12. Mär 2009
 
Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.840 Beiträge
 
Delphi 10 Seattle Enterprise
 
#18

Re: Problem mit GetClass in stat. App bei dyn. geladenen Pac

  Alt 12. Mär 2009, 14:40
  • Wenn "keine Laufzeitpackages" beim Kompilieren ausgewählt ist, passiert Folgendes:

    Dem Compiler sind alle Packages egal.

    Bei einem Build: (Projekt erzeugen)
    Es werden einfach alle *.pas Dateien kompiliert, die in der uses Anweisung des Programms (*.dpr) und der einzelnen Units (*.pas) angegeben sind kompiliert und dann die entsprechende *.dcu eingebunden (gelinkt). Wenn keine *.pas Datei vorhanden ist, wird direkt die entsprechende *.dcu eingebunden.

    -> Es entsteht eine Exe Datei, die alles eingebunden hat und keine Packages braucht.

    Du benötigst zum Kompilieren:
    • Deine Projektdateien (*.dpr, *.pas, *.dfm, *.res)
    • alle von Dir verwendeten *.dcu Dateien der VCL, Komponenten, ... (z.B. aus "$(DELPHI)\lib")
    Du benötigst zum Starten des Projekts:
    • Deine Exe Datei
  • Wenn „mit Laufzeitpackages“ beim Kompilieren ausgewählt ist, passiert Folgendes:

    Es wird vor dem Kompilieren der *.pas Dateien geschaut, ob diese in einem Package enthalten sind. Wenn ja, dann wird die *.dcu nicht eingebunden, sondern auf as Package verwiesen.
    Es werden also nur die *.pas Dateien kompiliert und *.dcu Dateien eingebunden, die in keinem Package enthalten sind. Also die, die zum Projekt gehören.

    Um die Anwendung starten zu können, sollten dann alle statisch verlinkten Runtime-Packages vorhanden sein.
    Natürlich werden auch alle Packages, die in dem requires Abschnitt verwendeten Packages aufgelistet sind, benötigt.

    DesignTime Packages werden zum Kompilieren nicht benötigt, sie enthalten "nur" den Code, der von der IDE benötigt wird um während der DesignTime (also der Programmerstellung in der IDE) ausgeführt zu werden.
    (Zum Beispiel Property-Editoren und Component-Editoren, Wizards, IDE-Plugins, ...)

    Du benötigst zum Kompilieren:
    • Deine Projektdateien (*.dpr, *.pas, *.dfm, *.res)
    • Packagedateien (*.dcp)
    • alle von Dir verwendeten *.dcu Dateien, die nicht in einem Package stecken.
    Du benötigst zum Starten des Projekts:
    • Deine Exe Datei
    • alle verwendeten Packagedateien (*.bpl)
    Ein Sonderfall ist ein Package, dort werden zum Kompilieren noch nicht mal die *.dcu Dateien der in requires angegebenen Package benötigt, es reicht die *.dcp Datei, in der alle relevanten Informationen der dcu's enthalten sind. Wichtig bei DesignTime Packages, zu denen die *.dcu fehlen. (z.B. Proxy.dcu)

    siehe auch Lösung: Das leidige Problem mit der DsgnIntf bzw. Proxy.dcu
Ich hoffe die Infos helfen Dir.
(°¿°) MaBuSE - proud to be a DP member
(°¿°) MaBuSE - proud to be a "Rüsselmops" ;-)
  Mit Zitat antworten Zitat
 


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 20:22 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-2025 by Thomas Breitkreuz