Metodo IDebugEventCallbacksWide::SessionStatus (dbgeng.h)
Il metodo di callback SessionStatus viene chiamato dal motore quando si verifica una modifica nella sessione del debugger.
Sintassi
HRESULT SessionStatus(
[in] ULONG Status
);
Parametri
[in] Status
Specifica il nuovo stato della sessione del debugger. Nella tabella seguente sono descritti i valori possibili.
Valore | Descrizione |
---|---|
DEBUG_SESSION_ACTIVE | È stata avviata una sessione del debugger. |
DEBUG_SESSION_END_SESSION_ACTIVE_TERMINATE | La sessione è stata terminata inviando DEBUG_END_ACTIVE_TERMINATE a EndSession. |
DEBUG_SESSION_END_SESSION_ACTIVE_DETACH | La sessione è stata terminata inviando DEBUG_END_ACTIVE_DETACH a EndSession. |
DEBUG_SESSION_END_SESSION_PASSIVE | La sessione è stata terminata inviando DEBUG_END_PASSIVE a EndSession. |
DEBUG_SESSION_END | La destinazione è stata eseguita fino al completamento, terminando la sessione. |
DEBUG_SESSION_REBOOT | Il computer di destinazione è stato riavviato, terminando la sessione. |
DEBUG_SESSION_HIBERNATE | Il computer di destinazione è entrato in ibernazione, terminando la sessione. |
DEBUG_SESSION_FAILURE | Il motore non è riuscito a continuare la sessione. |
Valore restituito
Il valore restituito di questo metodo viene ignorato dal motore.
Commenti
Questo metodo viene chiamato dal motore solo se il flag DEBUG_EVENT_SESSION_STATUS è impostato nella maschera restituita da IDebugEventCallbacksWide::GetInterestMask.
Dopo che il motore ha informato tutti i callback degli eventi della modifica nello stato della sessione, invia una notifica anche alle estensioni caricate che esportano il metodo di callback DebugExtensionNotify . Il valore passato alle estensioni dipende dal valore di Status. Se Status è DEBUG_SESSION_ACTIVE, passa DEBUG_SESSION_ACTIVE; in caso contrario, passa DEBUG_SESSION_INACTIVE.
Nel caso DEBUG_SESSION_ACTIVE, il motore segue la notifica di modifica della sessione del debugger con una notifica di modifica dello stato di destinazione chiamando IDebugEventCallbacksWide::ChangeDebuggeeState sui callback dell'evento e passando DEBUG_CDS_ALL nel parametro Flags . In tutti gli altri casi, il motore precede questa notifica con una notifica di modifica dello stato del motore chiamando IDebugEventCallbacksWide::ChangeEngineState sui callback degli eventi e passando DEBUG_CES_EXECUTION_STATUS nel parametro Flags .
Per altre informazioni sulla gestione degli eventi, vedere Monitoraggio degli eventi. Per informazioni sulle sessioni del debugger, vedere Debug di sessioni ed esecuzione del modello.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Desktop |
Intestazione | dbgeng.h (include Dbgeng.h) |