Ich bin mir ziemlich sicher, dass ich das schon einmal gesehen habe, aber ich habe es nicht herausgefunden, wie es gemacht wird. Ich möchte eine Codezeile haben, die, wenn sie vom Delphi-Debugger ausgeführt wird, den Debugger aufrufen soll, als ob es einen Unterbrechungspunkt in dieser Zeile gäbe.Wie simuliert man einen Delphi Breakpoint im Code?
Etwas wie:
FooBar := Foo(Bar);
SimulateBreakPoint; // Cause break point to occur in Delphi IDE if attached
WriteLn('Value: ' + FooBar);
Hoffentlich, die Sinn macht. Ich weiß, dass ich eine Ausnahme verwenden könnte, aber das wäre viel mehr Aufwand, als ich möchte. Es ist für einige Demo-Code.
Vielen Dank im Voraus!
Das war es. Hat super funktioniert! Vielen Dank! Jetzt muss ich einen Weg finden, um den Call-Stack für den Break-Point nach oben zu bewegen. . . . –
Achten Sie darauf, EExternal zu fangen, da sonst eine externe Ausnahme auftritt, wenn Sie außerhalb des Debuggers ausgeführt werden. –
Oder, wie ich vorgeschlagen habe: wenn DebugHook <> 0 dann asm int 3 Ende; – gabr