Partager via


Méthode IDebugEventCallbacksWide ::ChangeEngineState (dbgeng.h)

La méthode de rappel ChangeEngineState est appelée par le moteur lorsque son état a changé.

Syntaxe

HRESULT ChangeEngineState(
  [in] ULONG   Flags,
  [in] ULONG64 Argument
);

Paramètres

[in] Flags

Spécifie un jeu de bits indiquant le type de modifications qui se sont produites dans l’état du moteur. Les indicateurs de bits suivants peuvent être définis :

Valeur Description
DEBUG_CES_CURRENT_THREAD Le thread actuel a changé, ce qui implique que la cible actuelle et le processus actuel peuvent également avoir changé.
DEBUG_CES_EFFECTIVE_PROCESSOR Le processeur effectif a changé.
DEBUG_CES_BREAKPOINTS Un ou plusieurs points d’arrêt ont changé.
DEBUG_CES_CODE_LEVEL Le niveau d’interprétation du code a changé.
DEBUG_CES_EXECUTION_STATUS La status d’exécution a changé.
DEBUG_CES_ENGINE_OPTIONS Les options du moteur ont changé.
DEBUG_CES_LOG_FILE Le fichier journal a été ouvert ou fermé.
DEBUG_CES_RADIX Le radix par défaut a changé.
DEBUG_CES_EVENT_FILTERS Les filtres d’événements ont changé.
DEBUG_CES_PROCESS_OPTIONS Les options de processus pour le processus actuel ont changé.
DEBUG_CES_EXTENSIONS Les DLL d’extension ont été chargées ou déchargées. (Pour plus d’informations, consultez Chargement des DLL d’extension de débogueur.)
DEBUG_CES_SYSTEMS Une cible a été ajoutée ou supprimée.
DEBUG_CES_ASSEMBLY_OPTIONS Les options d’assemblage ont changé.
DEBUG_CES_EXPRESSION_SYNTAX La syntaxe d’expression par défaut a changé.
DEBUG_CES_TEXT_REPLACEMENTS Les remplacements de texte ont changé.

[in] Argument

Fournit des informations supplémentaires sur la modification de l’état du moteur. Si plusieurs indicateurs de bits sont définis dans le paramètre Flags , le paramètre Argument n’est pas utilisé. Sinon, l’interprétation de la valeur d’Argument dépend de la valeur des indicateurs :

DEBUG_CES_CURRENT_THREAD

La valeur d’Argument est l’ID de thread du moteur actuel ou, s’il n’existe pas de thread actuel, DEBUG_ANY_ID. Pour plus d’informations, consultez Threads et processus.

DEBUG_CES_EFFECTIVE_PROCESSOR

La valeur d’Argument est le type du processeur effectif.

DEBUG_CES_BREAKPOINTS

La valeur d’Argument est l’ID de point d’arrêt du point d’arrêt qui a été modifié ou, si plusieurs points d’arrêt ont été modifiés, DEBUG_ANY_ID. Pour plus d’informations, consultez Points d’arrêt.

DEBUG_CES_CODE_LEVEL

La valeur d’Argument est le niveau d’interprétation du code.

DEBUG_CES_EXECUTION_STATUS

La valeur d’Argument est la status d’exécution (comme décrit dans la rubrique DEBUG_STATUS_XXX) éventuellement associée à l’indicateur de bits DEBUG_STATUS_INSIDE_WAIT. DEBUG_STATUS_INSIDE_WAIT est défini lorsqu’un appel WaitForEvent est en attente. Pour plus d’informations, consultez Débogage de session et modèle d’exécution.

DEBUG_CES_ENGINE_OPTIONS

La valeur d’Argument est les options du moteur.

DEBUG_CES_LOG_FILE

La valeur d’Argument est TRUE si le fichier journal a été ouvert et FALSE si le fichier journal a été fermé.

DEBUG_CES_RADIX

La valeur de Argument est le radix par défaut.

DEBUG_CES_EVENT_FILTERS

La valeur d’Argument est l’index du filtre d’événements qui a été modifié ou, si plusieurs filtres d’événements ont été modifiés, DEBUG_ANY_ID.

DEBUG_CES_PROCESS_OPTIONS

La valeur d’Argument est les options de processus pour le processus en cours.

DEBUG_CES_EXTENSIONS

La valeur d’Argument est zéro.

DEBUG_CES_SYSTEMS

La valeur d’Argument est l’ID cible de la cible ajoutée ou, si une cible a été supprimée, DEBUG_ANY_ID.

DEBUG_CES_ASSEMBLE_OPTIONS

La valeur d’Argument est les options d’assemblage.

DEBUG_CES_EXPRESSION_SYNTAX

La valeur d’Argument est la syntaxe d’expression par défaut.

DEBUG_CES_TEXT_REPLACEMENTS

La valeur d’Argument est DEBUG_ANY_ID.

Valeur retournée

La valeur de retour est ignorée par le moteur, sauf si elle indique une erreur d’appel de procédure distante ; dans ce cas, le client, avec lequel cet objet IDebugEventCallbacksWide est inscrit, est désactivé.

Remarques

Cette méthode n’est appelée par le moteur que si l’indicateur DEBUG_EVENT_CHANGE_ENGINE_STATE est défini dans le masque retourné par IDebugEventCallbacksWide ::GetInterestMask.

Pour plus d’informations sur la gestion des événements, consultez Surveillance des événements.

Configuration requise

Condition requise Valeur
Plateforme cible Desktop (Expérience utilisateur)
En-tête dbgeng.h (inclure Dbgeng.h)