Debugger.LastBreakReason 속성
프로그램이 멈춘 마지막 원인을 가져옵니다. 프로그램이 실행되고 있으면 DBG_REASON_NONE을 반환합니다.
네임스페이스: EnvDTE
어셈블리: EnvDTE(EnvDTE.dll)
구문
‘선언
ReadOnly Property LastBreakReason As dbgEventReason
dbgEventReason LastBreakReason { get; }
property dbgEventReason LastBreakReason {
dbgEventReason get ();
}
abstract LastBreakReason : dbgEventReason with get
function get LastBreakReason () : dbgEventReason
속성 값
형식: EnvDTE.dbgEventReason
dbgEventReason 값입니다.
설명
LastBreakReason은 프로그램이 중단된 이유를 나타내는 dbgEventReason 값을 반환합니다. 다음과 같은 이유로 인해 프로그램이 중단될 수 있습니다.
중단점에 도달했습니다.
dbgEventReasonBreakpoint을 반환합니다.
예외가 throw되었습니다.
dbgEventReasonExceptionThrown을 반환합니다.
예외가 throw되었지만 디버깅 중인 프로그램에서 이 예외를 처리하지 않았습니다.
아무런 내용도 디버깅되지 않거나 디버거가 실행 모드인 경우 이 속성은 dbgEventReasonNone을 반환합니다.
예제
다음 예제에서는 LastBreakReason 속성을 사용하는 방법을 보여 줍니다.
이 속성을 테스트하려면
대상 응용 프로그램에 중단점을 설정합니다. 추가 기능을 실행합니다.
디버그 모드에서 대상 응용 프로그램을 실행합니다.
추가 기능을 실행합니다.
public static void LastBreakReason(DTE dte)
{
// Setup the 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: ");
switch(dte.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;
}
}
Shared Sub LastBreakReason(ByRef dte As EnvDTE.DTE)
Select Case dte.Debugger.LastBreakReason
Case dbgEventReason.dbgEventReasonBreakpoint
MessageBox.Show("Breakpoint hit.", "Debugger Test - LastBreakReason")
Case dbgEventReason.dbgEventReasonNone
MessageBox.Show("No reason", "Debugger Test - LastBreakReason")
Case dbgEventReason.dbgEventReasonExceptionNotHandled
MessageBox.Show("Exception not handled by the debuggee", _
"Debugger Test - LastBreakReason")
Case dbgEventReason.dbgEventReasonExceptionThrown
MessageBox.Show("Exception thrown", "Debugger Test - LastBreakReason")
End Select
End Sub
.NET Framework 보안
- 직접 실행 호출자의 경우 완전히 신뢰합니다. 이 멤버는 부분적으로 신뢰할 수 있는 코드에서 사용할 수 없습니다. 자세한 내용은 부분 신뢰 코드에서 라이브러리 사용를 참조하세요.