[Lazarus] disable the debugger capturing the OutputDebugString() messages

Sven Barth pascaldragon at googlemail.com
Sun Jul 18 15:00:40 CEST 2010


Hi!

On 18.07.2010 14:52, Bernd wrote:
> 2010/7/18 Sven Barth<pascaldragon at googlemail.com>:
>> It basically does the following:
>> 1) Raise an exception containing the message.
>
> OK, this seems to be the missing piece of the puzzle for understanding
> whats going on. I was basing all my theories only on this:
> http://unixwiz.net/techtips/outputdebugstring.html and there they
> don't mention the exceptions.

That's why I like to dig into source myself: to see how it really works. :D

> I have just posted a question about how this mechanism works on the
> GDB mailing list. One option to solve my dilemma would be that GDB
> would be modified so that it itself calls OutputDebugString() again to
> propagate the messages originating from such exceptions and the other
> one would be to label them differently when they are outputted to the
> console so they could easily be grepped and separately displayed in an
> IDE window.

Well... you could always try to mimic the sending part of 
OutputDebugString as seen in the source link I've send you. Might be 
easier than to convince the GDB people to include this. And even if 
they'd include it, you must wait for a new release or build it yourself.

> AFAIK Delphi also has the possibility to display these
> messages conveniently in an IDE window.

That's because Delphi contains its own debugger which catches the 
exceptions that are raised by OutputDebugString.

Regards,
Sven




More information about the Lazarus mailing list