Funzione ContinueDebugEvent (debugapi.h)
Consente a un debugger di continuare un thread che in precedenza ha segnalato un evento di debug.
Sintassi
BOOL ContinueDebugEvent(
[in] DWORD dwProcessId,
[in] DWORD dwThreadId,
[in] DWORD dwContinueStatus
);
Parametri
[in] dwProcessId
Identificatore del processo da continuare.
[in] dwThreadId
Identificatore del thread da continuare. La combinazione di identificatore di processo e identificatore del thread deve identificare un thread che ha precedentemente segnalato un evento di debug.
[in] dwContinueStatus
Opzioni per continuare il thread che ha segnalato l'evento di debug.
Valore | Significato |
---|---|
|
Se il thread specificato dal parametro dwThreadId ha segnalato in precedenza un evento di debug EXCEPTION_DEBUG_EVENT, la funzione arresta l'elaborazione di tutte le eccezioni e continua il thread e l'eccezione viene contrassegnata come gestita. Per qualsiasi altro evento di debug, questo flag continua semplicemente il thread. |
|
Se il thread specificato da dwThreadId in precedenza ha segnalato un evento di debug EXCEPTION_DEBUG_EVENT, la funzione continua l'elaborazione delle eccezioni. Se si tratta di un evento di eccezione first-chance, viene usata la logica di ricerca e di invio del gestore eccezioni strutturato; in caso contrario, il processo viene terminato. Per qualsiasi altro evento di debug, questo flag continua semplicemente il thread. |
|
Supportato in Windows 10 versione 1507 o successiva, questo flag causa la riproduzione dell'evento di interruzione esistente dopo che la destinazione continua. Chiamando l'API SuspendThread su dwThreadId, un debugger può riprendere altri thread nel processo e tornare successivamente all'interruzione. |
Valore restituito
Se la funzione ha esito positivo, il valore restituito è diverso da zero.
Se la funzione ha esito negativo, il valore restituito è zero. Per informazioni dettagliate sull'errore, chiamare GetLastError.
Commenti
Solo il thread che ha creato dwProcessId con la funzione CreateProcess può chiamare ContinueDebugEvent.
Dopo che la funzione ContinueDebugEvent ha esito positivo, il thread specificato continua. A seconda dell'evento di debug segnalato in precedenza dal thread, si verificano azioni diverse. Se il thread continuato ha segnalato in precedenza un evento di debug EXIT_THREAD_DEBUG_EVENT, ContinueDebugEvent chiude l'handle del debugger al thread. Se il thread continuato ha segnalato in precedenza un evento di debug EXIT_PROCESS_DEBUG_EVENT, ContinueDebugEvent chiude gli handle del debugger al processo e al thread.
Esempio
Per un esempio, vedere Scrittura del ciclo principale del debugger.
Requisiti
Client minimo supportato | Windows XP [solo app desktop] |
Server minimo supportato | Windows Server 2003 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | debugapi.h (include Windows.h) |
Libreria | Kernel32.lib |
DLL | Kernel32.dll |