[Monodevelop-devel] Newbie question about soft debugger

Christoph Müller chrism at g-graphix.de
Sun Jul 10 18:36:20 EDT 2011


There’s a big commercial application that comes with a C++ plugin API which
I am wrapping to allow users to write plugins for that application using C#
or other .Net/Mono languages. Everything works quite well using MS .Net and
Visual Studio:

 

I have a master C++ plugin that brings up the .Net runtime in which I start
one or more C#/.Net plugins from which I can use and call C# classes and
methods wrapped around the original C++ API. I can debug into the C# code,
set breakpoints – all is quite well.

 

Now I’d like to use the Mono runtime instead of the .Net runtime in my
master plugin and MonoDevelop to edit and debug C# plugins because the
target application is also available on the Mac. Currently I’m still
developing under Windows 7. I developed a MonoDevelop Add-In that starts the
Soft Debugger. What already works is:

Starting the Mono runtime (Mono 2.10.2) from my C++ master plugin, loading
managed assemblies and invoking managed code.

Building assemblies using MonoDevleop (v. 2.6 beta 3). 

The target application comes up, my managed plugins are started, and somehow
the debugger seems to connect.

 

BUT:

No breakpoint is ever hit. All breakpoints set in MonoDevelop appear invalid
when MonoDevelop enters debug mode. 

 

I rebuilt mono-2.0.dll and debugged into it from Visual Studio where I can
see that my embedded mono runtime seems to start in debug mode – it tries to
connect to localhost, port 57432 (I took the port number that Unity seems
successfully connect to the soft debugger – but my app is not related to
Unity). So it doesn’t seem to be a basic connection problem.

 

Since I’m pretty new to all the stuff: Do you have any idea where I could
start searching? I read something about Mono using the mdb debug format,
while mono creates pdb files – Could this be a problem? Or is all the stuff
just too new as I’m using beta versions of Mono and MonoDevelop? Is there a
way to break into the soft debugger from C# code (like breaking into the
Visual Studio debugger with System.Diagnostics.Debugger.Break ()?

 

Thanks for any hint.

Christoph

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.ximian.com/pipermail/monodevelop-devel-list/attachments/20110711/edca53d2/attachment.html 


More information about the Monodevelop-devel-list mailing list