IDebugControl3 ::SetInterrupt, méthode (dbgeng.h)
La méthode SetInterrupt inscrit une interruption ou un saut d’utilisateur dans le débogueur.
Syntaxe
HRESULT SetInterrupt(
[in] ULONG Flags
);
Paramètres
[in] Flags
Spécifie le type d’interruption à inscrire. indicateurs pouvez prendre l’une des valeurs répertoriées dans le tableau suivant.
Valeur | Description |
---|---|
DEBUG_INTERRUPT_ACTIVE |
Si la cible est en cours d’exécution, le moteur demande un saut dans le débogueur. Cette demande peut expirer. Pour plus d’informations, consultez la section « Remarques ».
Sinon, lorsque la cible est suspendue, le moteur inscrit une interruption utilisateur. |
DEBUG_INTERRUPT_PASSIVE | Le moteur inscrit une interruption utilisateur. |
DEBUG_INTERRUPT_EXIT |
S’il existe actuellement un appel WaitForEvent en cours d’exécution, le moteur le force à retourner. S’il existe des commandes de débogueur provoquant l’exécution dans la cible ( par exemple, g (Go) et p (étape) - le moteur les force à se terminer. Cela ne force pas un saut dans le débogueur, de sorte que la cible peut ne pas être suspendue. Dans ce cas, l’appel WaitForEvent retourne E_PENDING.
Sinon, lorsque la cible est suspendue, inscrivez une interruption utilisateur. |
Valeur de retour
Cette méthode peut également retourner des valeurs d’erreur. Pour plus d’informations, consultez valeurs de retour.
Retourner le code | Description |
---|---|
|
La méthode a réussi. |
Remarques
Cette méthode peut être appelée à tout moment et à partir de n’importe quel thread. Une fois l’interruption enregistrée, cette méthode retourne immédiatement.
Si indicateurs est DEBUG_INTERRUPT_ACTIVE et que l’interruption expire, le moteur génère un événement d’exception synthétique. Cet événement sera envoyé à la méthode IDebugEventCallbacks ::Exception de rappel d’événement. La durée avant l’expiration de l’interruption peut être définie à l’aide de SetInterruptTimeout.
Exigences
Exigence | Valeur |
---|---|
plateforme cible | Bureau |
d’en-tête | dbgeng.h (include Dbgeng.h) |