Einzelnen Beitrag anzeigen

Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Verzögertes Laden von Komponenten in Delphi 2005

  Alt 18. Nov 2004, 09:50
Jetzt, wo diese beiden Voraussetzungen geklärt sind, wollen wir damit anfangen zu erklären, wie die IDE feststellt welche Packages for verzögertes Laden in Frage kommen. Wenn die IDE auf ein Design-Time Package stößt, dann wird diese meistens verschiedene Run-Time Packages "benötigen", welche ausschließlich die Informationen enthalten, welche zur Laufzeit der Komponenten benötigt werden. (Du hast doch hoffentlich Deine Design-Time Komponenten von den Run-Time Komponenten getrennt... hast Du? Wenn nicht, dann ist das ein Grund für eine spätere Diskussion ) Das Design-Time Package ist der Ort, wo die eigentliche Komponente und die Komponenten-/Eigenschafts- und Auswahleditoren registriert werden. Diese wird durch Aufrufe zu RegisterComponents, RegisterPropertyEditor, RegisterComponentEditor, etc innerhalb der globalen Prozeduren Register erledigt. Es ist wichtig, dass immer die Register Prozedur genutzt wird, um diese Aufgabe zu erledigen damit das verzögerte Laden der Packages unterstützt werden kann. Weitere Informationen dazu gibt es in diesem Blog Eintrag. Um zu ermitteln, ob ein Package verzögert geladen werden kann werden alle Aufrufe zu Prozeduren, welche Komponenten, Eigenschaftseditoren, etc. registrieren überwacht. Es wird darauf geachtet, ob alle Registrierungen sich ausschließlich auf das zu registrierende Package beziehen, oder nicht. Wenn z.B. ein Eigenschaftseditor registriert wird, der sich auf möglicherweise auf eine Komponente ausserhalb des Packages bezieht, so wird dieses Package vom verzögerten Laden ausgeschlossen. Das ist ein wichtiger Punkt.
Daniel W.