Dieses Verhalten hat mich auch an den Rand der Verzweifung gebracht. Ursache ist immer(!)
a)
DCU gleichen Namens in einem anderen* Verzeichnis
b)
PAS gleichen Namens in einem anderen* Verzeichnis
* Dieses andere Verzeichnis wird von Delphi beim Kompilieren früher gescannt, als die von dir sichtbare Datei.
Stelle einfach sicher (wie der Sir schon gesagt hat), das es keine
DCU bzw.
PAS Datei auf der Platte gibt.
Ich verwende einige blöde Tricks, wenn ich mir nicht ganz sicher bin:
1. Nach dem Kompilieren werden im
IDE-Editor alle Zeilen mit so einem blauen Bupsel markiert. Wenn diese beim Starten des Programms NICHT verschwinden, scheidet a) aus.
2. Irgendwo in der
Unit einen Syntaxfehler produzieren und Kompilieren. Wird der Fehler erkannt, scheidet b) aus.
Sollte damit eigentlich funktionieren.
Sehr lustig sind auc Effekte, wo die Zeileninformation nicht mehr stimmt, dann werden 'Var'-Zeilen plötzlich zu Programmzeilen und Programmfehler werden z.B. hier angezeigt:
Delphi-Quellcode:
End;
// hier tritt der Fehler auf, hö hö
Procedure FooBar;