Nja, beim Laden/Aktivieren von Projekten kann Delphi auch Komponenten/Packages laden/entladen,
wenn im Projekt z.B. eine entsprechende Liste gespeichert ist.
z.B. <Excluded_Packages> siehe DPROJ irgendwo unter <ProjectExtensions>
Auch wenn man in der Projektverwaltung, in einer Projektgruppe, zwischen den Projekten wechselt, passiert das.
Und manchme Packages haben einfach Bugs und vertragen es nicht, wenn sie mehrmals entladen/geladen werden ... also knallt es dann.
Seit "Kurzem" entlädt nun Delphi auch Forms, wenn Packages entladen werden ... z.B. im XE knallte dir noch alles weg, wenn man das
Package, oder davon Requiredete Packages, einer Komponente entlädt, bzw. kompiliert.
Komponenten > Packages installieren speichert in der
IDE (Registry), wenn beim Ändern keine Projekte geladen sind, ansonsten wird das in dem aktiven Projekt (DPROJ) gespeichert.
Beim Upgrade einer DPROJ auf ein neues Delphi, können "Fehler" passieren, womit die DPROJ danach nicht mehr richtig funktioniert.
Die DPROJ ist keine doofe Konfigurationsdatei, sondern eigentlich ein MSBuild-Script, welches quasi wie eine ScriptSprache ala Python/JavaScript/VBScript/... durchlaufen wird.
Auch das neue Feature für GetIt-Abhängigkeiten ist per se bestimmt gut, wenn es beim Kompilieren aktuell nicht knallen würde.
So oder so gibt es eben manchmal Dinge darin, welche größere Auswirkungen haben können, als wenn nur eine einfache INI/
XML in eine dummes Options-Set geladen würde.