Condividi tramite


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)