Méthode IDebugEventCallbacksWide ::SessionStatus (dbgeng.h)
La méthode de rappel SessionStatus est appelée par le moteur lorsqu’une modification se produit dans la session du débogueur.
Syntaxe
HRESULT SessionStatus(
[in] ULONG Status
);
Paramètres
[in] Status
Spécifie la nouvelle status de la session du débogueur. Le tableau suivant décrit les valeurs possibles.
Valeur | Description |
---|---|
DEBUG_SESSION_ACTIVE | Une session de débogueur a démarré. |
DEBUG_SESSION_END_SESSION_ACTIVE_TERMINATE | La session s’est terminée par l’envoi de DEBUG_END_ACTIVE_TERMINATE à EndSession. |
DEBUG_SESSION_END_SESSION_ACTIVE_DETACH | La session a été terminée par l’envoi de DEBUG_END_ACTIVE_DETACH à EndSession. |
DEBUG_SESSION_END_SESSION_PASSIVE | La session a été terminée par l’envoi de DEBUG_END_PASSIVE à EndSession. |
DEBUG_SESSION_END | La cible s’est exécutée jusqu’à l’achèvement, mettant fin à la session. |
DEBUG_SESSION_REBOOT | L’ordinateur cible a redémarré, mettant fin à la session. |
DEBUG_SESSION_HIBERNATE | L’ordinateur cible a été mis en veille prolongée, mettant fin à la session. |
DEBUG_SESSION_FAILURE | Le moteur n’a pas pu continuer la session. |
Valeur retournée
La valeur de retour de cette méthode est ignorée par le moteur.
Remarques
Cette méthode n’est appelée par le moteur que si l’indicateur DEBUG_EVENT_SESSION_STATUS est défini dans le masque retourné par IDebugEventCallbacksWide ::GetInterestMask.
Une fois que le moteur a averti tous les rappels d’événements de la modification dans le status de session, il notifie également toutes les extensions chargées qui exportent la méthode de rappel DebugExtensionNotify. La valeur qu’il transmet aux extensions dépend de la valeur de Status. Si Status est DEBUG_SESSION_ACTIVE, il passe DEBUG_SESSION_ACTIVE ; sinon, il passe DEBUG_SESSION_INACTIVE.
Dans le cas DEBUG_SESSION_ACTIVE, le moteur suit la notification de modification de session du débogueur avec une notification de changement d’état cible en appelant IDebugEventCallbacksWide ::ChangeDebuggeeState sur les rappels d’événements et en passant DEBUG_CDS_ALL dans le paramètre Flags . Dans tous les autres cas, le moteur précède cette notification d’une notification de changement d’état du moteur en appelant IDebugEventCallbacksWide ::ChangeEngineState sur les rappels d’événements et en passant DEBUG_CES_EXECUTION_STATUS dans le paramètre Flags .
Pour plus d’informations sur la gestion des événements, consultez Surveillance des événements. Pour plus d’informations sur les sessions de débogueur, consultez Débogage de session et modèle d’exécution.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | dbgeng.h (inclure Dbgeng.h) |