Как смоделировать точку останова Delphi в коде?

Я почти уверен, что видел это раньше, но я не узнал / не вспомнил, как это сделать. Я хочу иметь строку кода, которая при запуске из отладчика Delphi, я хочу, чтобы отладчик всплывал, как будто на этой строке была точка останова.

Что-то вроде:

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

Надеюсь, это имеет смысл. Я знаю, что мог бы использовать исключение, но это было бы намного больше, чем я хочу. Это для демонстрационного кода.

Заранее спасибо!

2 ответа

Решение

Чтобы вызвать отладчик из кода (предположительно, у меня нет удобной копии delphi):

asm int 3 end;

Смотрите эту страницу:

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

Как заявил Андреас Хаусладен в комментариях к этой статье, функция Win32 API DebugBreak() менее требовательна к DOS и одинаково хорошо работает.

Другие вопросы по тегам