Debugger4 Interface

Debugger4 is used to interrogate and manipulate the state of the debugger and the program being debugged. Debugger4 supersedes the Debugger3 interfaces.

Namespace:  EnvDTE90a
Assembly:  EnvDTE90a (in EnvDTE90a.dll)

Syntax

'Declaration
<GuidAttribute("133BAD54-8E8D-451B-9DB0-AF38ED9819CC")> _
Public Interface Debugger4 _
    Inherits Debugger3
[GuidAttribute("133BAD54-8E8D-451B-9DB0-AF38ED9819CC")]
public interface Debugger4 : Debugger3
[GuidAttribute(L"133BAD54-8E8D-451B-9DB0-AF38ED9819CC")]
public interface class Debugger4 : Debugger3
[<GuidAttribute("133BAD54-8E8D-451B-9DB0-AF38ED9819CC")>]
type Debugger4 =  
    interface 
        interface Debugger3 
    end
public interface Debugger4 extends Debugger3

The Debugger4 type exposes the following members.

Properties

  Name Description
Public property AllBreakpointsLastHit Gets a collection of bound breakpoints that were last simultaneously hit.
Public property BreakpointLastHit Gets the last breakpoint hit. To get a collection of multiple breakpoints hit simultaneously, see AllBreakpointsLastHit.
Public property Breakpoints Gets a collection of breakpoints.
Public property CurrentMode Gets the current mode of the debugger within the context of the IDE.
Public property CurrentProcess Gets or sets the active process.
Public property CurrentProgram Sets or returns the active program.
Public property CurrentStackFrame Gets or sets the current stack frame.
Public property CurrentThread Gets or sets the current thread being debugged.
Public property DebuggedProcesses Gets the list of processes that are currently being debugged.
Public property DTE Gets the top-level extensibility object.
Public property ExceptionGroups Gets the exception settings for the debugger. For each exception, these settings determine whether the debugger gives the code a chance to handle the exception before the debugger breaks execution.
Public property ForceContinue Gets or sets a value that determines whether the debugger breaks or continues when a tracepoint or breakpoint finishes executing a macro. The default behavior is set by the user in the dialog box when the tracepoint or breakpoint is created. This property can be used to change the default behavior.
Public property HexDisplayMode Gets or sets a value that indicates whether the expressions are output in hexadecimal or decimal format.
Public property HexInputMode Gets or sets a value that indicates whether the expressions are evaluated in hexadecimal or decimal format.
Public property Languages Gets a list of languages that the debugger supports.
Public property LastBreakReason Gets the last reason that a program was broken. If the program is running, it returns DBG_REASON_NONE.
Public property LocalProcesses Gets the list of processes that are currently running on this computer.
Public property OnlyLoadSymbolsManually Gets a value that determines whether symbols are loaded manually or automatically. The Visual Studio user can determine this setting in the Options dialog box. For more information about how to set this value within Visual Studio, see [OBSOLETE] How to: Specify Symbol Locations and Loading Behavior.
Public property Parent Gets the immediate parent object of the Debugger4 object (DTE2).
Public property SymbolCachePath Gets a string that contains the path to the symbols cache used by Visual Studio when you download symbols from a symbols server. You can specify the symbols cache path in the Options dialog box. For more information, see [OBSOLETE] How to: Use a Symbol Server.
Public property SymbolPath Gets a string that contains paths to .PDB symbol files that are used by Visual Studio for debugging. The Visual Studio user can specify symbols paths in the Options dialog box. For more information, see [OBSOLETE] How to: Specify Symbol Locations and Loading Behavior.
Public property SymbolPathState Gets a string that represents the state of all symbol paths for the .PDB symbol files that are used by Visual Studio for debugging.
Public property Transports Gets a collection of supported debugging transports.

Top

Methods

  Name Description
Public method Break Causes the given process to pause its execution so that its current state can be analyzed.
Public method DetachAll Detaches from all attached programs.
Public method ExecuteStatement Executes the specified statement. If the TreatAsExpression flag is true, then the string is interpreted as an expression, and output is sent to the Command Window.
Public method GetExpression Evaluates an expression based on the current stack frame. If the expression can be parsed but not evaluated, an object is returned but does not contain a valid value.
Public method GetExpression2 Evaluates an expression based on the current stack frame. If the expression can be parsed but not evaluated, an object is returned but does not contain a valid value. This method is similar to GetExpression but with an additional Boolean parameter, which can be set to true to indicate that the expression is to be evaluated as a statement.
Public method GetExpression3 Evaluates an expression, similar to GetExpression. However, this method allows the caller to specify the stack frame that the evaluation will occur on. It also allows the caller to specify whether automatic evaluation of properties and implicit function calls should occur.
Public method GetProcesses Gets an object that represents the processes that are currently connected for debugging on the specified transport.
Public method Go Starts executing the program from the current statement.
Public method RunToCursor Executes the program to the current position of the source file cursor.
Public method SetNextStatement Sets the next instruction to be executed, according to the cursor position in the current source file.
Public method SetSymbolSettings Sets various settings for the .PDB symbols used by Visual Studio for debugging and forces reloading of all symbols.
Public method StepInto Steps into the next function call, if possible.
Public method StepOut Steps out of the current function.
Public method StepOver Steps over the next function call.
Public method Stop Stops debugging and terminates or detaches from all attached processes.
Public method TerminateAll Terminates all currently running debugging processes.
Public method WriteMinidump If debugging a program and in Break mode, this function creates a minidump of the current debugging session.

Top

Remarks

The debugger is available through the DTE2 object through its Debugger property. One debugger object is available for each instance of the interactive development environment (IDE).

To use Debugger4, you must add a reference to EnvDTE90a.dll. For native development, you must add a reference to dte90a.tlb.

Examples

See Debugger3.

See Also

Reference

EnvDTE90a Namespace