We recommend using Visual Studio 2017

Breakpoints (Visual Studio SDK)


The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.

The latest version of this topic can be found at Breakpoints (Visual Studio SDK).

There are three types of breakpoints: pending, bound, and error.

A pending breakpoint:

  • Is an abstraction that contains all the information needed to bind a breakpoint to one or more code contexts in one or more programs. Each time a program being debugged cause code to load, the debug engine checks all pending breakpoints to see if they can be bound.

    A pending breakpoint itself never binds to code, but rather collects and is said to contain all the bound breakpoints that it generates.

  • Is represented by an IDebugPendingBreakpoint2 interface.

A bound breakpoint:

  • Is an abstraction for a breakpoint associated with or bound to a single code context. Each bound breakpoint is generated in response to a pending breakpoint. A pending breakpoint can, however, generate more than one bound breakpoint.

    When code is unloaded, a bound breakpoint can be unbound and discarded.

  • Is represented by an IDebugBoundBreakpoint2 interface.

An error breakpoint:

  • Is an abstraction for describing an error in attempting to bind a pending breakpoint to a code context. An error breakpoint describes either an error in location or in the breakpoint expression itself. For more information, see Binding Breakpoints.

    The breakpoint error can be either an error or a warning.

  • Is represented by an IDebugErrorBreakpoint2 interface.

Debugger Concepts
Code Context