Jump to content
Tuts 4 You

Recommended Posts

Posted

Partition of ICorDebug

The ICorDebug API (the API for debugging managed apps) is about 70 total interfaces.

Here is how I'd group the interfaces together, along with my random comments about

how various interfaces fit into the big picture.

A quick comment about interface versioning:

1. ICorDebug is a COM-classic unmanaged interface. Most of the interfaces are derived from

IUnknown because we wanted to avoid the diamond-inheritance problem when we needed to add

version 2 interfaces. I've left the "Derives From" column blank if an interface derives

from IUnknown.

2. Version 2 interfaces have the previous interface's name appended with a version number.

(eg, "IFoo2")

I'd roughly partition it into the following groups:

Top-level: ICorDebug + ICorDebug2 are the top-level interfaces which effectively serve as

a collection of ICorDebugProcess objects.

Mike Stall Blog

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...