Es gibt einige Fälle, in welchen die
IDE "verwirrt" ist, welche Packages verzögert geladen werden sollen und welche nicht. Ein solcher Fall ist es zum Beispiel, das ein
Design-Time Package ein
Run-Time/
Design-Time Package benötigt. Das
Run-Time/
Design-Time Package registriert einige Komponenten und das
Design-Time Package die dazugehörigen Editoren und Auswahlelemente. In solchen Fällen gibt es zwei Möglichkeiten. Die bevorzugte Methode ist es die Packages so umzustrukturieren, dass die
Design-Time Elemente aus dem
Run-Time/
Design-Time Package in das "reine"
Design-Time Package verschoben werden. Die andere Möglichkeit ist es, den Aufruf
ForceDemandLoadState(dlDisable);
in das
Design-Time Package einzufügen. Das bringt uns auch schon zu einer weiteren neuen globalen Funktion
ForceDemandLoadState(). Diese ermöglicht es die automatische Analyselogik der
IDE zu umgehen und so unseren Willen durchzusetzen. Es mag Gründe geben, welche die
IDE veranlassen ein
Package vom verzögerten Laden auszuschließen, man jedoch überzeugt ist, dass das nicht nötig ist. Ein Aufruf zu
ForceDemandLoadState(dlEnable);
innerhalb der
Register Prozedur löst das Problem. Weitere Information hierzu befinden sich in den Kommentaren der
Unit DesignIntf.pas.