Visual Studio Debugger Extensibility

Note

This article applies to Visual Studio 2015. If you're looking for the latest Visual Studio documentation, see Visual Studio documentation. We recommend upgrading to the latest version of Visual Studio. Download it here

Visual Studio 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 Visual Basic, C#, C/C++, and JavaScript. However, with the Visual Studio SDK, that is available from the Microsoft Download Center, other programming languages can be supported in the debugger with the same rich features.

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, such as a debug engine (DE). That is where the Visual Studio SDK comes in.

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

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

The following sections describe how to extend the debugger by using the Visual Studio SDK.

In This Section

Getting Started
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 CLR Expression Evaluator
Explains whether you must write an expression evaluator.

Choosing a Debug Engine Implementation Strategy
Discusses how to implement your DE.

Reference
Documents the Visual Studio Debugging API.

Samples
Contains links to a common language runtime expression evaluator sample and a debug engine sample.