Partager via


IDebugEventCallbacks ::ChangeDebuggeeState, méthode (dbgeng.h)

La ChangeDebuggeeState méthode de rappel est appelée par le moteur lorsqu’il effectue ou détecte les modifications apportées à la cible.

Syntaxe

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

Paramètres

[in] Flags

Spécifie le type de modifications apportées à la cible. indicateurs peut prendre l’une des valeurs suivantes :

Valeur Description
DEBUG_CDS_ALL Une modification générale de la cible s’est produite. Par exemple, la cible est en cours d’exécution ou le moteur vient d’être attaché à la cible.
DEBUG_CDS_REGISTERS Les registres du processeur pour la cible ont changé.
DEBUG_CDS_DATA L’espace de données de la cible a changé.
DEBUG_CDS_REFRESH Informez les clients de l’interface utilisateur utilisateur pour actualiser les fenêtres du débogueur.

[in] Argument

Fournit des informations supplémentaires sur la modification dans la cible. L’interprétation de la valeur de argument dépend de la valeur des indicateurs de :

DEBUG_CDS_ALL
La valeur de argument est égale à zéro.
DEBUG_CDS_REGISTERS
Si un registre unique a changé, la valeur de Argument est l’index de ce registre. Sinon, la valeur de Argument est DEBUG_ANY_ID.
DEBUG_CDS_DATA
La valeur de Argument spécifie l’espace de données qui a été modifié. Le tableau suivant contient les valeurs possibles d'Argument.
Valeur Description
DEBUG_DATA_SPACE_VIRTUAL La mémoire virtuelle de la cible a changé.
DEBUG_DATA_SPACE_PHYSICAL La mémoire physique de la cible a changé.
DEBUG_DATA_SPACE_CONTROL La mémoire de contrôle de la cible a changé.
DEBUG_DATA_SPACE_IO Les ports d’E/S de la cible ont reçu une entrée ou une sortie.
DEBUG_DATA_SPACE_MSR Les Model-Specific Registres (MSR) de la cible ont changé.
DEBUG_DATA_SPACE_BUS_DATA La mémoire de bus de la cible a changé.
 
DEBUG_CDS_REFRESH
Le tableau suivant contient les valeurs possibles d'Argument.
Valeur
DEBUG_CDS_REFRESH_EVALUATE
DEBUG_CDS_REFRESH_EXECUTE
DEBUG_CDS_REFRESH_EXECUTECOMMANDFILE
DEBUG_CDS_REFRESH_ADDBREAKPOINT
DEBUG_CDS_REFRESH_REMOVEBREAKPOINT
DEBUG_CDS_REFRESH_WRITEVIRTUAL
DEBUG_CDS_REFRESH_WRITEVIRTUALUNCACHED
DEBUG_CDS_REFRESH_WRITEPHYSICAL
DEBUG_CDS_REFRESH_WRITEPHYSICAL2
DEBUG_CDS_REFRESH_SETVALUE
DEBUG_CDS_REFRESH_SETVALUE2
DEBUG_CDS_REFRESH_SETSCOPE
DEBUG_CDS_REFRESH_SETSCOPEFRAMEBYINDEX
DEBUG_CDS_REFRESH_SETSCOPEFROMJITDEBUGINFO
DEBUG_CDS_REFRESH_SETSCOPEFROMSTOREDEVENT
DEBUG_CDS_REFRESH_INLINESTEP
DEBUG_CDS_REFRESH_INLINESTEP_PSEUDO
 

Valeur de retour

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 ce IDebugEventCallbacks objet est inscrit, est désactivé.

Remarques

Le moteur appelle ChangeDebuggeeState uniquement si l’indicateur DEBUG_EVENT_CHANGE_DEBUGGEE_STATE est défini dans le masque retourné par IDebugEventCallbacks ::GetInterestMask.

Pour plus d’informations sur la gestion des événements, consultez Monitoring Events. Pour plus d’informations sur la gestion de la mémoire de la cible, y compris les registres et les espaces de données, consultez d’accès à la mémoire. Pour plus d’informations sur la mémoire virtuelle et physique de la cible, consultez mémoire virtuelle et physique. Pour plus d’informations sur la mémoire de contrôle, les ports d’E/S, MSR et la mémoire de bus de la cible, consultez autres espaces de données.

Exigences

Exigence Valeur
plateforme cible Bureau
d’en-tête dbgeng.h (include Dbgeng.h)