It is very frustrating to write a managed debugger in v1.0 and v1.1. There is a word document describing CLR's unmanaged debugging interface in .Net Framework SDK. But the documentation for System.Diagnostics.SymbolStore is just not enough for you to get started.

Fortunately Microsoft does realize the problem, and released a managed debugger sample in MSDN:

http://www.microsoft.com/downloads/details.aspx?familyid=38449a42-6b7a-4e28-80ce-c55645ab1310&displaylang=en

From its description:

“This sample provides the source code for a CLR command line debugger, mdbg. The sample demonstrates how to use the CLR debugging interfaces and also shows how to use the CLR MetaData, Symbol Store, and Process Publishing interfaces. It also demonstrates the use of advanced debugger features implemented in Whidbey, like edit and continue. “

This sample requires .Net framework 2.0 beta1. This may or may not help you if you are stuck in v1.1. But you know, this gives you another good reason to move to 2.0 when it is released:)