Surveillance des événements
Pour obtenir une vue d’ensemble des événements dans le moteur de débogueur, consultez Événements.
Les événements se produisant dans une cible ou dans le moteur de débogueur peuvent être surveillés à l’aide de l’interface IDebugEventCallbacks . Un objet IDebugEventCallbacks peut être inscrit auprès d’un client à l’aide de SetEventCallbacks. Chaque client ne peut avoir qu’un seul objet IDebugEventCallbacks inscrit avec lui.
Lorsqu’un objet IDebugEventCallbacks est inscrit auprès d’un client, le moteur appelle L’objet IDebugEventCallbacks::GetInterestMask pour déterminer les événements qui intéressent l’objet. Seuls les événements qui intéressent l’objet lui sont envoyés.
Pour chaque type d’événement, le moteur appelle une méthode de rappel correspondante sur IDebugEventCallbacks. Pour les événements de la cible, la valeur DEBUG_STATUS_XXX retournée à partir de ces appels spécifie comment l’exécution de la cible doit se poursuivre. Le moteur collecte ces valeurs de retour à partir de chaque objet IDebugEventCallbacks qu’il appelle et agit sur celui qui a la priorité la plus élevée.
Événements de la cible qui s’entrent dans le débogueur par défaut
Les événements suivants entrent dans le débogueur par défaut :
Événements de point d’arrêt
Événements d’exception (non documentés ici)
Erreur système
Événements de la cible qui ne s’entrent pas dans le débogueur par défaut
Les événements suivants ne s’entrent pas dans le débogueur par défaut :
Créer un événement de processus
Événement de processus de sortie
Créer un événement de thread
Événement de thread de sortie
Événement de module de chargement
Événement de module de déchargement
Modifications internes du moteur
Les éléments suivants ne sont pas des événements réels, mais sont simplement des modifications de moteur internes :
Modification cible
Modification du moteur
Modification du symbole du moteur
Changement d’état de session