This documentation is archived and is not being maintained.

Creating a Custom Debug Engine 

A debug engine (DE) is a component that allows debugging of particular run-time architectures. There is typically only one DE implementation per run-time environment.


While there are separate DE implementations for TSQL and JScript, VBScript and JScript share a single DE.

A DE works with the interpreter or operation system to provide such debugging services as execution control, breakpoints, and expression evaluation. These services are implemented through the DE interfaces and can cause the debugger to transition between different operational modes. For more information, see Operational Modes.

Creating a DE consists of the following steps:

  1. Registering a DE with Visual Studio

  2. Enabling a program to be debugged

  3. Execution control and state evaluation

  4. Sending events

  5. Termination and detaching

In This Section

Registering a Custom Debug Engine

Explains the steps needed to register a debug engine with Visual Studio so that it can be used.

Enabling a Program to Be Debugged

Explains that before your DE can debug a program, you must first launch the DE or attach it to an existing program.

Execution Control and State Evaluation

Discusses why debugging an application requires implementing execution control features.

Sending Events

Describes communication between the debugger and the DE as an event model based on DCOM.

Termination and Detaching

Explains how to achieve normal termination, which means that there are no breakpoints, exceptions, run-time errors, or infinite loops in the application to be debugged.

Calling Debugger Events

Documents the calling order of the events occurring in a debugging session.

How To: Debug a Custom Debug Engine

Explains how to debug a custom DE.

See Also