[2/2] mscoree: Implement ICorDebug CreateProcess

Vincent Povirk madewokherd at gmail.com
Fri Nov 4 10:06:36 CDT 2011


I'm curious why you've chosen to work on this. Is there a program
relying on this, or do you have some .NET debugging tools you'd like
to use? Or are you thinking we'd implement our own debugging tool as
well (perhaps extending winedbg)?

Better debugging tools for wine/mono would definitely be nice, but
there are a lot of things we need, and this is not the first one I'd
pick.

The current state of the art in Mono debugging is the soft debugger.
>From what I've heard, all other debugger technologies in Mono have
been deprecated.
http://www.mono-project.com/Mono:Runtime:Documentation:SoftDebugger

They have documentation on the wire protocol, which is probably what
we'd end up using because .NET libraries are inconvenient to use.

>From what I can tell, the soft debugger needs to be configured to
listen for TCP connections on a particular port. Ideally, we would
want to modify it by adding a new "transport" using something like a
named pipe server named based on the process id (it looks
straightforward to do so, but we'd have to modify the mono runtime).
Otherwise, I'm not sure how we'd identify the socket server for the
process we want, and having mono run a TCP server all the time seems
like a bad idea.

It may also be possible to configure mono to use the soft debugger in
the "normal" way and attach to it with a Linux MonoDevelop, if you
want a quicker solution. It seems like it's designed to remotely debug
any mono process on any platform. If you figure out how to do this,
wiki documentation would be appreciated.



More information about the wine-devel mailing list