如何在代码中模拟Delphi断点?

时间:2020-03-06 15:00:36  来源:igfitidea点击:

我敢肯定,我之前已经看过这个,但是我还没有发现/记得怎么做。我想要一行代码,当从Delphi调试器执行该代码时,我希望调试器弹出,就像该行上有一个断点一样。

就像是:

FooBar := Foo(Bar);
SimulateBreakPoint; // Cause break point to occur in Delphi IDE if attached
WriteLn('Value: ' + FooBar);

希望这是有道理的。我知道我可以使用异常,但是那会比我想要的开销大得多。它用于一些演示代码。

提前致谢!

解决方案

要从代码触发调试器(据说,我没有可尝试的delphi副本):

asm int 3 end;

看到这个页面:

http://17slon.com/blogs/gabr/2008/03/debugging-with-lazy-breakpoints.html

正如Andreas Hausladen在对该产品的评论中所指出的那样,Win32 API DebugBreak()函数的运行方式不像DOS那样,并且运行良好。