Metodo IDebugControl3::SetInterrupt (dbgeng.h)
Il metodo SetInterrupt registra un'interruzione o un'interruzione dell'utente nel debugger.
Sintassi
HRESULT SetInterrupt(
[in] ULONG Flags
);
Parametri
[in] Flags
Specifica il tipo di interrupt da registrare. I flag possono accettare uno dei valori elencati nella tabella seguente.
Valore | Descrizione |
---|---|
DEBUG_INTERRUPT_ACTIVE |
Se la destinazione è in esecuzione, il motore richiederà un'interruzione nel debugger. Questa richiesta potrebbe verificarsi il timeout. Per altre informazioni, vedere la sezione "Osservazioni".
In caso contrario, quando la destinazione viene sospesa, il motore registrerà un interrupt utente. |
DEBUG_INTERRUPT_PASSIVE | Il motore registrerà un interrupt utente. |
DEBUG_INTERRUPT_EXIT |
Se è attualmente in esecuzione una chiamata WaitForEvent , il motore forza la restituzione. Se sono presenti comandi del debugger che causano l'esecuzione nella destinazione, ad esempio g (Go) e p (passaggio), il motore li forza a completare. Ciò non forza un'interruzione nel debugger, pertanto la destinazione potrebbe non essere sospesa. In questo caso, la chiamata WaitForEvent restituirà E_PENDING.
In caso contrario, quando la destinazione viene sospesa, registrare un'interruzione dell'utente. |
Valore restituito
Questo metodo può anche restituire valori di errore. Per altri dettagli, vedere Valori restituiti .
Codice restituito | Descrizione |
---|---|
|
Il metodo è stato eseguito correttamente. |
Commenti
Questo metodo può essere chiamato in qualsiasi momento e da qualsiasi thread. Dopo la registrazione dell'interrupt, questo metodo restituisce immediatamente.
Se Flags è DEBUG_INTERRUPT_ACTIVE e si verifica il timeout dell'interrupt, il motore genererà un evento di eccezione sintetica. Questo evento verrà inviato al metodo IDebugEventCallbacks::Exception del callback dell'evento. La quantità di tempo prima del timeout dell'interrupt può essere impostata usando SetInterruptTimeout.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Desktop |
Intestazione | dbgeng.h (include Dbgeng.h) |