DlangIDE
Vadim Lopatin via Digitalmars-d-announce
digitalmars-d-announce at puremagic.com
Sat Feb 28 01:50:10 PST 2015
On Saturday, 28 February 2015 at 08:06:59 UTC, Rainer Schuetze
wrote:
>
>
> On 26.02.2015 11:17, Vadim Lopatin wrote:
>> On Wednesday, 18 February 2015 at 08:21:19 UTC, Rainer
>> Schuetze wrote:
>>>
>>>
>>> On 17.02.2015 20:41, Vadim Lopatin wrote:
>>>> It looks like we need to develop some universal debugger
>>>> library.
>>>> For linux, it can use gdb as a backend.
>>>> For windows - I'm not sure. Is there any console debugger
>>>> which can
>>>> debug dmd generated executables? I've checked windbg shipped
>>>> with dmd,
>>>> but it looks like it is GUI, and cannot be used as backend
>>>> via console.
>>>> Trying to play with my own implementation of debugger using
>>>> win32 API.
>>>>
>>>> Probably there is already some debugger interface written in
>>>> D?
>>>
>>> On Windows, there is mago (https://github.com/rainers/mago),
>>> a debug
>>> engine that integrates with Visual Studio, but it's actually
>>> not
>>> limited to that. It might be rather complicated to host it,
>>> though,
>>> you'll have to interface with IDebugEngine2 and all its
>>> subclasses
>>> (https://msdn.microsoft.com/en-us/library/bb145310.aspx).
>>>
>>> If you want a text interface, the Debugging Tools for Windows
>>> (https://msdn.microsoft.com/en-us/windows/hardware/hh852365)
>>> also
>>> contain cdb, a command line version of windbg (forget about
>>> the one
>>> distributed with dmd). For Win32, you'll have to convert the
>>> old
>>> CodeView debug info written by optlink to PDB format using
>>> cv2pdb,
>>> though.
>>
>> Trying to integrate MAGO.
>> I can easy create instance of MAGO DebugEngine, but having
>> problems with
>> obtaining of IDebugPort which is needed for invoking of
>> LaunchSuspended.
>> It looks like to get IDebugPort, I need IDebugCoreServer2
>> instance.
>> Does anybody know how to do it?
>
> I suspect that is implemented by the Visual Studio debugger.
> Have you tried creating an IDebugPortSupplier2?
> https://msdn.microsoft.com/en-us/library/bb145819.aspx
>
> It might also only be possible from within Visual Studio,
> though. To host a debug engine you might have to implement
> these yourself...
To create IDebugPortSupplier2, I need at least GUID for class
implementing it.
More information about the Digitalmars-d-announce
mailing list