Debugger2.LastBreakReason Property
Gets the last reason that a program was broken. If the program is running it returns DBG_REASON_NONE.
Namespace: EnvDTE80
Assembly: EnvDTE80 (in EnvDTE80.dll)
Syntax
'Declaration
ReadOnly Property LastBreakReason As dbgEventReason
dbgEventReason LastBreakReason { get; }
property dbgEventReason LastBreakReason {
dbgEventReason get ();
}
abstract LastBreakReason : dbgEventReason with get
function get LastBreakReason () : dbgEventReason
Property Value
Type: EnvDTE.dbgEventReason
A dbgEventReason value.
Remarks
A program can be broken, for example, for some of the following reasons:
A breakpoint was hit. Gets dbgEventReasonBreakpoint.
An exception was thrown. Gets dbgEventReasonExceptionThrown.
An exception was thrown but not handled by the program being debugged. Gets dbgEventReasonExceptionNotHandled.
If nothing is being debugged or the debugger is in run mode, this property returns dbgEventReasonNone.
For a complete list of enumerations, see dbgEventReason.
Examples
The following example demonstrates how to use the LastBreakReason property.
To test this property:
Set a breakpoint in the target application. Run the add-in.
Run the target application in the debug mode.
Run the add-in.
public static void LastBreakReason(EnvDTE80.DTE2 dte)
{
// Setup debug Output window.
Window w =
(Window)dte.Windows.Item(EnvDTE.Constants.vsWindowKindOutput);
w.Visible = true;
OutputWindow ow = (OutputWindow)w.Object;
OutputWindowPane owp = ow.OutputWindowPanes.Add("Last Break Reason
Test");
owp.Activate();
owp.OutputString("The reason that a program was broken: ");
EnvDTE80.Debugger2 debugger = (EnvDTE80.Debugger2)dte.Debugger;
switch (debugger.LastBreakReason)
{
case dbgEventReason.dbgEventReasonBreakpoint:
owp.OutputString("Breakpoint hit.");
break;
case dbgEventReason.dbgEventReasonNone:
owp.OutputString("No reason");
break;
case dbgEventReason.dbgEventReasonExceptionNotHandled:
owp.OutputString("Exception not handled by the debuggee");
break;
case dbgEventReason.dbgEventReasonExceptionThrown:
owp.OutputString("Exception thrown");
break;
}
}
Sub LastBreakReason()
' This function shows the reason break mode was entered
' in the Output window.
Dim ow As OutputWindow
ow = DTE2.Windows.Item(Constants.vsWindowKindOutput).Object
Select Case DTE2.Debugger.LastBreakReason
Case dbgEventReason.dbgEventReasonBreakpoint
ow.ActivePane.OutputString("Breakpoint hit" + vbCrLf)
Case dbgEventReason.dbgEventReasonNone
ow.ActivePane.OutputString("No reason" + vbCrLf)
Case dbgEventReason.dbgEventReasonExceptionNotHandled
ow.ActivePane.OutputString("Exception not handled by the _
debuggee" + vbCrLf)
Case dbgEventReason.dbgEventReasonExceptionThrown
ow.ActivePane.OutputString("Exception thrown" + vbCrLf)
End Select
End Sub
.NET Framework Security
- Full trust for the immediate caller. This member cannot be used by partially trusted code. For more information, see Using Libraries from Partially Trusted Code.