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) |