This documentation is archived and is not being maintained.

Visual Studio Debugging Extensibility 

Microsoft Visual Studio 2005 includes a fully interactive source code debugger, providing a powerful and easy-to-use tool for tracking down bugs in your program. The debugger has complete support for the Visual Basic, Visual C#, Visual J#, and C/C++ languages, as well as the scripting languages ECMA, VBScript and JScript. However, with the Visual Studio Debugging SDK, available through the Visual Studio Industry Partner (VSIP) program, other computer languages can be supported in the debugger with the same rich features.


Creating a new language extension to the debugger requires a VSPackage license supplied under the terms of the VSIP program.

The Visual Studio Debugger is the common front end (that is, the user interface) to the debugging components that are, in turn, specific to the language being debugged. For new languages, all that is necessary for support by the Visual Studio Debugger is to create the necessary back-end components—otherwise known as a debug engine (DE)—and that is where the Visual Studio Debugging SDK comes in.

The Visual Studio Debugging SDK includes a complete reference to all of the Visual Studio elements required to create a new DE. In addition, there are samples and tutorials that will help you get started.

For an end-to-end sample of a language project system with debugging support, see the IronPython Samples.

The following sections describe the Debugging SDK in detail.

In This Section

Getting Started (Visual Studio Debugging SDK)

Describes what Visual Studio Debugging offers and how to install the SDK.

Creating a Custom Debug Engine

Documents the custom DE process, from preparing your program for a DE to detaching the DE.

Writing a Common Language Runtime Expression Evaluator

Explains whether or not you need to write an expression evaluator.

Tutorial: Building a Debug Engine Using ATL COM

Provides step-by-step instructions on how to create a COM-based DE using Visual C++.

Choosing a Debug Engine Implementation Strategy

Discusses how to implement your DE.

Reference (Visual Studio Debugging SDK)

Documents the Visual Studio Debugging API.

Visual Studio Debugging Samples

Contains a common language runtime expression evaluator sample.