Share via


Mdbgcore.dll and linking IL

Mdbg is now included in the Whidbey Beta 2 SDK as a tool.
The source is not actually included in the SDK, so we’d like to also refresh the Mdbg sample. 

Mdbg originally compiled to many different dlls (corapi.dll, corapi2.dll, mdbgeng.dll, mdbgext.dll). However, for deployment reasons, we wanted only 1 dll. Conveniently, link.exe in Whidbey now links IL modules, so we used that to merge all the mdbg dlls into a single dll, “mdbgcore.dll”.  You’ll notice MDbg in the sdk is now distributed as 3 binaries:

  1. Mdbg.exe – the actual executable to run. This is pure IL and is cross platform.
  2. mdbgcore.dll – all reusable parts of mdbg outside of the shell. Mdbg extensions can link against this dll. This is pure IL and is cross platform.
  3. mdbgdis.dll – platform specific code for optional functionality such as viewing registers.

Since Mdbg can run via xcopy deployment, we intentionally prefixed everything with “mdbg” so that you can deploy it via “xcopy mdbg* .”

The dilemma is that the Mdbg sample needs to be completely buildable from the SDK. But the SDK doesn’t include link.exe. So the sample can’t produce the same dll layout as the sdk. 
This switch of dll names also causes Mdbg Beta 1 things (such as my gui extension) to not build against Mdbg Beta 2.

Comments

  • Anonymous
    June 02, 2005
    I had a sample GUI extension for Mdbg Beta 1. However, it doesn’t build with Mdbg Beta 2 because:   ...
  • Anonymous
    June 02, 2005
    Mdbgdis.dll and "Microsoft.Samples.Debugging.Native" namespace in MdbgCore.dll seem to contain some really interesting code(Hope it's not released as IL !!)

    Can't wait to make my hands dirty :-)

    Thanks,
    Sameer
  • Anonymous
    July 27, 2005
    Several people have asked how to write something that runs some executable under a harness and then...
  • Anonymous
    August 10, 2005
    I had a sample GUI extension for Mdbg Beta 1. However, it doesn’t build with Mdbg Beta 2 because:   ...
  • Anonymous
    August 10, 2005

    The Mdbg (a managed debugging written in pure C#) sample, which includes full source, has now been...
  • Anonymous
    August 10, 2005

    The Mdbg (a managed debugging written in pure C#) sample, which includes full source, has now been...
  • Anonymous
    August 18, 2005
    I had a sample GUI extension for Mdbg Beta 1. However, it doesn’t build with Mdbg Beta 2 because:   ...