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