Intern erstellt die
IDE verschieden Datenbäume, welche während der jeweiligen Registrierungen gefüllt werden. Während jede Komponente/jeder Editor/jede Auswahl registriert wird, vergleicht die
IDE diese mit der jeweiligen Packagegruppe. Erinnerst Du Dich an den
VirtualQueryEx Trick von oben? Dieser wird genutzt um festzustellen, welches
Package welche Komponente/Editor/Auswahl etc. beinhaltet. Solange das
Package innerhalb der gleichen Gruppe ist, ist alles in Ordnung. Sollte es einer Referenz gestattet sein nach ausserhalb der Gruppen zu dringen, dann könnte es passieren, dass die Komponente/Editor/Auswahl nicht korrekt geladen wird, wenn diese gebraucht wird. Nehmen wir als Beispiel, dass Du einen Eigenschaftseditor für alle Eigenschaften von Typ
TStrings für alle
TPersistent-Objekte erstellen willst. Dieses ist eine vollständig "legale" Registrierung, allerdings würde diese das
Package vom verzögerten Laden ausschließen. Dieser Ausschluß ist nicht unbedingt eine negative Sache. Es kann durchaus sein, dass Du den von Borland mitgelieferten TString-Eigenschaftseditor mit einem eigenen übergehen willst. Es bedeute einfach, dass Dein
Package immer geladen wird, entweder während des Starts von Delphi oder wenn ein Projekt geladen wird, welches das
Package nutzt.