Hier entscheidet eher die Option "Debug-DCUs", ob die DCUs der
RTL/
VCL/FMX aus dem normalen oder dem Debug-Verzeichnis genommen werden.
Für deine "neu kompilierten" Units, da entscheidet natürlich die Config deines Projekts.
WAS hast du geändert?
* nur was "in" Funktionen
* oder was im Interface
Delphi kompiliert standardmäßig gegen die vorkompilierten DCUs, nicht gegen die
PAS der
RTL/
VCL/...
Problem ist somit auch, dass andere Units ja gegen die "originale"
PAS DCU kompiliert wurden.
Ändert sich nun was am Interface, dann passen andere Units (
DCU) nicht mehr zu der "neuen"
Unit, und es knallt nunmal.
Und genau das besagt auch die Fehlermeldung.
Eine Lösung wäre nun, auch jene
Unit(s) zu kopieren und neu zu kompilieren.
Natürlich könntest du auch deine "geänderten" Units als RELEASE vorkompilieren
und dann die geänderten DCUs im Suchpfad deines Projektes (nicht die geänderten
PAS).
Somit wären auch Jene immer ohne Debuginfos, egal welche Config dein Projekt nutzt.
Mich kotzt ja schon an, dass die "Debug DCUs" standardmäßig aktiv sind.
Drum wöllte ich natürlich auch nicht, dass solche Neukompilate gedebuggt werden. (beim Benutzen in Projekten)
Wer um Himmels willen, mag es wirklich ständig in den System- und
VCL-Units zu landen, anstatt im eigenen Code?
PS: Würden
PAS direkt im Delphi-Verzeichnis bearbeitet,
dann könnte man es teilweise mit
C:\Program Files (x86)\Embarcadero\Studio\22.0\source\rtl\buildrtl.bat
versuchen,
aber da sich nicht alle Packages, vor allem nicht die DesignTimePackages der
IDE, neu kompilieren lassen, landet man hier schnell in der Hölle.