Metodo IDebugEventCallbacksWide::ChangeDebuggeeState (dbgeng.h)
Il metodo di callback ChangeDebuggeeState viene chiamato dal motore quando apporta o rileva modifiche alla destinazione.
Sintassi
HRESULT ChangeDebuggeeState(
[in] ULONG Flags,
[in] ULONG64 Argument
);
Parametri
[in] Flags
Specifica il tipo di modifiche apportate alla destinazione. flag possono accettare uno dei valori seguenti:
Valore | Descrizione |
---|---|
DEBUG_CDS_ALL | Si è verificata una modifica generale nella destinazione. Ad esempio, la destinazione è stata eseguita o il motore è stato appena collegato alla destinazione. |
DEBUG_CDS_REGISTERS | Il registro del processore per la destinazione è stato modificato. |
DEBUG_CDS_DATA | Lo spazio dati della destinazione è stato modificato. |
[in] Argument
Fornisce informazioni aggiuntive sulla modifica nella destinazione. L'interpretazione del valore di Argument dipende dal valore di Flags:
- DEBUG_CDS_ALL
- Il valore di Argument è zero.
- DEBUG_CDS_REGISTERS
- Se un singolo registro è stato modificato, il valore di Argument è l'indice del registro. In caso contrario, il valore di Argument è DEBUG_ANY_ID.
- DEBUG_CDS_DATA
-
Il valore di Argument specifica quale spazio dati è stato modificato. La tabella seguente contiene i valori possibili di Argument.
Valore Descrizione DEBUG_DATA_SPACE_VIRTUAL La memoria virtuale della destinazione è cambiata. DEBUG_DATA_SPACE_PHYSICAL La memoria fisica della destinazione è cambiata. DEBUG_DATA_SPACE_CONTROL La memoria del controllo di destinazione è cambiata. DEBUG_DATA_SPACE_IO Le porte di I/O di destinazione hanno ricevuto input o output. DEBUG_DATA_SPACE_MSR I registri di Model-Specific di destinazione sono stati modificati. DEBUG_DATA_SPACE_BUS_DATA La memoria del bus di destinazione è cambiata.
Valore restituito
Il valore restituito viene ignorato dal motore a meno che non indichi un errore di chiamata di procedura remota; in questo caso il client, con cui viene registrato questo oggetto IDebugEventCallbacksWide, è disabilitato.
Osservazioni
Il motore chiama ChangeDebuggeeState solo se il flag DEBUG_EVENT_CHANGE_DEBUGGEE_STATE è impostato nella maschera restituita da IDebugEventCallbacksWide::GetInterestMask.
Per altre informazioni sulla gestione degli eventi, vedere Monitoraggio eventi. Per informazioni sulla gestione della memoria della destinazione, inclusi i registri e gli spazi dati, vedere Accesso alla memoria. Per informazioni sulla memoria virtuale e fisica della destinazione, vedere memoria virtuale e fisica. Per informazioni sulla memoria di controllo della destinazione, sulle porte di I/O, su MSR e sulla memoria del bus, vedere Altri spazi dati.
Fabbisogno
Requisito | Valore |
---|---|
piattaforma di destinazione | Desktop |
intestazione | dbgeng.h (include Dbgeng.h) |