Partager via


IDebugEventCallbacksWide ::SessionStatus, méthode (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 le nouvel état 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 a été terminée en envoyant DEBUG_END_ACTIVE_TERMINATE à endSession.
DEBUG_SESSION_END_SESSION_ACTIVE_DETACH La session a été terminée en envoyant DEBUG_END_ACTIVE_DETACH à EndSession.
DEBUG_SESSION_END_SESSION_PASSIVE La session a été terminée en envoyant DEBUG_END_PASSIVE à EndSession .
DEBUG_SESSION_END La cible s’est exécutée jusqu’à la fin de la session.
DEBUG_SESSION_REBOOT L’ordinateur cible a redémarré, terminant la session.
DEBUG_SESSION_HIBERNATE L’ordinateur cible a été mis en veille prolongée, terminant la session.
DEBUG_SESSION_FAILURE Le moteur n’a pas pu continuer la session.

Valeur de retour

La valeur de retour de cette méthode est ignorée par le moteur.

Remarques

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

Une fois que le moteur a informé tous les rappels d’événements de la modification de l’état de la session, il notifie également les extensions chargées qui exportent la méthode de rappel DebugExtensionNotify. La valeur qu’elle transmet aux extensions dépend de la valeur de Status. Si d’état 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 modification d’état cible en appelant IDebugEventCallbacksWide ::ChangeDebuggeeState sur les rappels d’événements et en passant DEBUG_CDS_ALL dans le paramètre Indicateurs. Dans tous les autres cas, le moteur précède cette notification avec une notification de modification 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 Monitoring Events. Pour plus d’informations sur les sessions de débogueur, consultez débogage de session et de modèle d’exécution.

Exigences

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