Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Kein einziger Haltepunkt funktioniert


Heino - Sa 14.06.03 11:17
Titel: Kein einziger Haltepunkt funktioniert
Hallo

Wenn ich in meiner Entwicklungsumgebung irgendwo einen Haltepunkt setze um das Programm im Einzelschritt weiter zu bearbeiten hält das Programm einfach nicht mehr an . Es sagt mir dann wenn ich das Programm beende *Haltepunkt unzulässig* (roter Kreis mit einem Kreuz durch), aber doch nicht im gesamten Programm. Es hat mal funktioniert und ich habe auch die Umgebungsoptionen und Projektoptionen geändert, kann es dort eventuell sein das ich eine Einstellung falsch gemacht habe ?.

Vielen Dank Heino


grayfox - Sa 14.06.03 11:28

hallo heino!

das von dir beschriebene phänomen tritt auf, wenn du einen haltepunkt in einem programmteil setzt, der nicht aufgerufen wird (eine procedure oder function, die das programm nicht verwendet). setz den haltepunkt auf den procedure- oder functionsaufruf und schau zu, wohin das programm verzweigt.
wenn die betroffende routine tatsächlich auch verwendet wird, hilft hin und wieder ein neuerliches abspeichern und neukompilieren.

mfg, stefan


mars - Sa 14.06.03 12:38

Dann solltest du bei Einzelschritt-Debugging und ähnlichem in den Compiler-Optionen 'Optimierung' ausschalten; sonst optimiert der Compiler nämlich schon mal einige Zeilen weg, führt For-Schleifen verkehrt rum durch usw. Nach dem Debuggen kannst du die Option wieder einschalten.


Brueggendiek - Sa 14.06.03 16:16

Hallo Heino!

Hast Du vielleicht aus Versehen den Compilerschalter auf "keine Debug-Infos" gesetzt?
Das findet sich an zwei Stellen: "Projekt - Optionen - Compiler - Debug-Informationen" und {$D-} bzw. {$DEBUGINFO OFF} - wenn das eingestellt ist (kein Haken bzw. eine der Anweisungen im Source), dann kann kein Haltepunkt und kein Einzelschritt funktionieren!

Bitte Haken setzen, ggf. {$D+} oder {$DEBUGINFO ON} setzen, dann klappt's auch mit den Haltepunkten!

Gruß

Dietmar Brüggendiek


Heino - So 15.06.03 17:39
Titel: Kein Halteschritt
Danke Dietmar es funktioniert wieder.

Dank auch an alle anderen.
Heino