Du hast nicht zufällig eine andere Version des DesignTime-Packages dieser Komponente in der IDE,
als das Runtimepackage oder der Quellcode, mit welchem das Programm kompiliert wird?
Tja, wenn sich nach dem Upgrade (Delphi oder Fremdkomponenten) etwas ändert, dann kann es nunmal knallen.
Kompilieren lassen ist keine Garantie, da die
DFM nur auf eine valide Syntax geprüft wird, bzw. wenn sie als TextDFM vorliegt, dann wird sie nach binär konvertiert und als Ressource in die EXE gelinkt.
Ob die Komponenten, Property, sonstwas wirklich "gültig" sind, ist damit also nicht gesagt.
Erst zur Laufzeit knallt es dann.
Oder eben du mußt mal alle Forms im Delphi öffnen.
Der
DFM-Reader im Formdesigner ist Fehlertoleranter, bzw du hast die Wahl
* ESC, bzw. Abbrechen -> die
DFM wird nicht im Designer geladen und bleibt unverändert
* manchaml wird bei ungültigen Beziehungen ein Auswahldialog gezeigt, wo man eine andere Komponente wählen kann, oder ...
* und ansonsten gibt es noch "Ignorieren", wo unbekannte Property, oder Welche die im Setter knallen, werden nicht geladen und sind beim Speichern weg
* * bzw. unbekannte Komponenten oder wo es im Constructor knallt, die würden dann auch nicht geladen/weggelasse und sind beim Speichern weg
* der Rest der
DFM wird aber geladen
* da man natürlich eine Versionsverwaltung nutzt, und wenn man nicht sieht was nun genau kaputt/weg ist, nach dem Speichern, sieht man das dann im DIFF
Was aber fieß ist (DDevExtension und Co. helfen), wenn sich die Signatur eines Event änderer, also Parameter und/oder deren Typen anders sind (Name der Parameter sind egal), dann sagt dir das die
IDE beim Speichern nicht ... geänderte Typen von Komponenten (in der
DFM anders, als in der
PAS), das sagt dir Delphi beim Speichern und repariert es.