![]() |
Haltepunkte werden nicht erreicht
Hallo,
in einem Projekt habe ich gerade das Problem, dass ich Haltepunkte drin habe, die angeblich jedoch nicht erreicht werden, also so durchkreuzt sind. Um zu testen ob es an der Codestelle liegt habe ich direkt auf das Application.Initialize einen Haltepunkt gesetzt. Selbst dort tritt das auf. Das Projekt wird beim drücken von F9 aber ganz normal ausgeführt, wie mit nem Debugger. Nur dass er nicht bei den Haltepunkten anhält. Ich hab jetzt schon einen andern Thread hier entdeckt, der sich mit dem Thema Haltepunkte beschäftigt: ![]() Hat mir leider nicht weitergeholfen. Checkliste: [x]Projektoptionen->Delphi-Compiler->Compilieren->Debug-Informationen [x]Tools->Optionen->Debugger-Optionen->Integriertes Debuggen Das sind denke ich die zwei wichtigsten, sonst weis ich nicht was ich noch einstellen kann. An was kann das noch liegen? Edit: In anderen Projekten funktioniert das debuggen problemlos |
AW: Haltepunkte werden nicht erreicht
Hast du das Projekt komplett neu übersetzt (Erzeugen). Ein einfaches Kompilieren sorgt nicht dafür das die nötigen DCU-Dateien mit Debug-Infos neu erzeugt werden.
|
AW: Haltepunkte werden nicht erreicht
Steht die Build-Konfiguration auf Debug oder Release?
|
AW: Haltepunkte werden nicht erreicht
Ah da hammas.
Die Build-Konfiguration stand auf Debug, aber Compilieren allein hat nicht gereicht. Ich bin auf Erzeugen gegangen, dann hats alle dcu's mal erzeugt un dann gingen auch die Haltepunkte :thumb: |
AW: Haltepunkte werden nicht erreicht
Um dieses Problem zu umgehen kann man in den Projekt-Optionen folgendes einstellen:
Code:
und alles wird gut
Ausgabeverzeichnis für Units = .\dcu\$(Config)
|
AW: Haltepunkte werden nicht erreicht
Zitat:
|
AW: Haltepunkte werden nicht erreicht
Zitat:
*.inc könnte auch was wichtiges drinstehen Und da gibt es noch einen Haufen Dateien, die ebenfalls wichtig sein könnten ... Als PreBuild-Ereignis könnte man die *.dcu und *.exe löschen, ok aber mit dem unterschiedlichen Ausgabeverzeichnissen für die DCUs ist das wesentlich einfacher im Handling |
AW: Haltepunkte werden nicht erreicht
Zitat:
Kommt halt auf Projekt(größe)/Zeit an. |
AW: Haltepunkte werden nicht erreicht
Zitat:
Bei einem neuen VCL-Projekt funktionieren die Haltepunkte übrigens. |
AW: Haltepunkte werden nicht erreicht
Eigentlich sollte es keinen Unterschied machen, ob VCL oder NonVCL.
Die SysUtils hast du aber nicht eingebunden? Dort drin wird wird ja eine Fehlerbehandlung initialisiert. Die Haltepunkte sind auch aktiv (rot) und man sieht ansonsten die blauen Codepunkte? Was passiert, wenn du dein Progamm mit F7 startest? Im Notfall könntest du noch
Delphi-Quellcode:
oder
asm int 3 end;
![]() |
AW: Haltepunkte werden nicht erreicht
Nein, die SysUtils wird nicht verwendet. Die braucht man ja nur für die Exceptions. Und mit F7 laden ich sofort im CPU Fenster, was auch nicht gerade optimal ist.
|
AW: Haltepunkte werden nicht erreicht
Du könntest einmal die .bdsproj Datei umbenennen (und die .local, ... löschen) und dann die .dpr öffnen. Dann erzeugt Delphi eine neue Standardprojektdatei. Wenn es an Einstellungen daraus lag, sollte es dann behoben sein.
Wenn es dann immer noch nicht geht, wird wohl auf die falschen Dateien zugegriffen. Aber dazu schreibe ich erst mehr, wenn das andere nicht funktioniert hat. ;-) |
AW: Haltepunkte werden nicht erreicht
Na, dann schreib mal mehr. :(
|
AW: Haltepunkte werden nicht erreicht
Erstens:
Was passiert, wenn du ein neues Projekt erstellst, die neue Unit dort herauswirfst und die alten aus deinem aktuellen Projekt dort hineinpackst? Funktioniert es dann? Wenn nicht, schau am besten einmal mit dem Process Monitor welche .dcu Dateien und welche Pfade eigentlich beim Kompilieren und Debuggen benutzt werden. |
AW: Haltepunkte werden nicht erreicht
Die Haltepunkte stehen in der dpr-Datei, da kann ich nichts austauschen. Und die aktuellen dcus werden verwendet, da die Änderungen im Code der dpr wirksam werden.
|
AW: Haltepunkte werden nicht erreicht
Anderer Ansatz:
Da war doch irgendwann mal was mit den Logitechtreibern, ich kann mich erinnern vor Jahren mal das selbe Problem gehabt zu haben. Mit dem Borland oder Codegear Support (ich weiss nicht mehr wer damals zuständig war), habe ich dann eine Logitech Webcam als Verursacher herausgefunden. Nach der Deinstallation der Logitechtreiber funktionierten meine Breakpoints wieder wie gewohnt. |
AW: Haltepunkte werden nicht erreicht
In einem neuen VCL Projekt funktionieren sie ja wie sie sollen. Das kann es also auch nicht sein.
|
AW: Haltepunkte werden nicht erreicht
Eine neue normale Konsolenanwendung kannst'e auch debuggen?
|
AW: Haltepunkte werden nicht erreicht
ist mir Heute unter XE2 auch passiert das der Haltepunkt ignoriert wurde
Die DCU´s löschen hat nicht geholfen (Integriertes Debuggen aktiv) geholfen hat: von einer älteren Sicherungskopie dpr / dproj / dproj.local in das Projekt Verzeichniss kopieren Scheint mit dem Punkt "Zum Neuerzeugen beim Debuggen geänderte Projekte auffordern" zusammenzuhängen... |
AW: Haltepunkte werden nicht erreicht
Workaround: man rufe selber
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:47 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz