Freigeben über


IDebugEventCallbacks::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 den neuen 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 beendet.
DEBUG_SESSION_REBOOT Der Zielcomputer wurde neu gestartet und die Sitzung 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 vom Modul ignoriert.

Hinweise

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

Nachdem das Modul alle Ereignisrückrufe über die Änderung in der Sitzung status benachrichtigt hat, benachrichtigt es 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 das Modul der Benachrichtigung zur Änderung der Debuggersitzung mit einer Benachrichtigung zur Änderung des Zielzustands, indem es IDebugEventCallbacks::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 des Modulstatus vorangestellt, indem IDebugEventCallbacks::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 Sitzung und Ausführungsmodell.

Anforderungen

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