Freigeben über


IDebugEventCallbacksWide::SessionStatus-Methode (dbgeng.h)

Die SessionStatus-Rückrufmethode wird von der Engine aufgerufen, wenn eine Änderung in der Debuggersitzung auftritt.

Syntax

HRESULT SessionStatus(
  [in] ULONG Status
);

Parameter

[in] Status

Gibt die neue status der Debuggersitzung an. In der folgenden Tabelle sind die möglichen Werte beschrieben.

Wert BESCHREIBUNG
DEBUG_SESSION_ACTIVE Eine Debuggersitzung wurde gestartet.
DEBUG_SESSION_END_SESSION_ACTIVE_TERMINATE Die Sitzung wurde beendet, indem DEBUG_END_ACTIVE_TERMINATE an EndSession gesendet wurde.
DEBUG_SESSION_END_SESSION_ACTIVE_DETACH Die Sitzung wurde beendet, indem DEBUG_END_ACTIVE_DETACH an EndSession gesendet wurde.
DEBUG_SESSION_END_SESSION_PASSIVE Die Sitzung wurde beendet, indem DEBUG_END_PASSIVE an EndSession gesendet wurde.
DEBUG_SESSION_END Das Ziel wurde bis zum Abschluss ausgeführt, und die Sitzung wurde beendet.
DEBUG_SESSION_REBOOT Der Zielcomputer wurde neu gestartet, und die Sitzung wurde beendet.
DEBUG_SESSION_HIBERNATE Der Zielcomputer ging in den Ruhezustand und beendete die Sitzung.
DEBUG_SESSION_FAILURE Die Engine konnte die Sitzung nicht fortsetzen.

Rückgabewert

Der Rückgabewert dieser Methode wird von der Engine ignoriert.

Hinweise

Diese Methode wird nur von der Engine aufgerufen, wenn das DEBUG_EVENT_SESSION_STATUS-Flag in der von IDebugEventCallbacksWide::GetInterestMask zurückgegebenen Maske festgelegt ist.

Nachdem die Engine alle Ereignisrückrufe über die Änderung in der Sitzung status benachrichtigt hat, benachrichtigt sie auch alle geladenen Erweiterungen, die die DebugExtensionNotify-Rückrufmethode exportieren. Der Wert, den er an die Erweiterungen übergibt, hängt vom Wert von Status ab. Wenn Status DEBUG_SESSION_ACTIVE ist, wird DEBUG_SESSION_ACTIVE übergeben. Andernfalls wird DEBUG_SESSION_INACTIVE übergeben.

Im DEBUG_SESSION_ACTIVE Fall folgt die Engine der Benachrichtigung zur Änderung der Debuggersitzung mit einer Zielzustandsänderungsbenachrichtigung, indem sie IDebugEventCallbacksWide::ChangeDebuggeeState für die Ereignisrückrufe aufruft und DEBUG_CDS_ALL im Flags-Parameter übergibt. In allen anderen Fällen wird dieser Benachrichtigung eine Änderungsbenachrichtigung für den Engine-Zustand vorangestellt, indem IDebugEventCallbacksWide::ChangeEngineState für die Ereignisrückrufe aufgerufen und DEBUG_CES_EXECUTION_STATUS im Flags-Parameter übergeben wird.

Weitere Informationen zur Behandlung von Ereignissen finden Sie unter Überwachen von Ereignissen. Informationen zu Debuggersitzungen finden Sie unter Debuggen von Sitzungs- und Ausführungsmodellen.

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile dbgeng.h (dbgeng.h einschließen)