Partager via


Méthode IDebugClient2 ::EndSession (dbgeng.h)

La méthode EndSession met fin à la session de débogueur actuelle.

Syntaxe

HRESULT EndSession(
  [in] ULONG Flags
);

Paramètres

[in] Flags

Spécifie comment mettre fin à la session. Les indicateurs peuvent être l’une des valeurs suivantes :

Indicateur Description
DEBUG_END_PASSIVE Effectuez le nettoyage de la session.
DEBUG_END_ACTIVE_TERMINATE Tentez d’arrêter toutes les cibles en mode utilisateur avant d’effectuer le nettoyage de la session.
DEBUG_END_ACTIVE_DETACH Essayez de vous déconnecter de toutes les cibles avant d’effectuer le nettoyage de la session.
DEBUG_END_REENTRANT Effectuez uniquement le nettoyage qui ne nécessite pas d’acquisition de verrous. Pour plus d’informations, consultez la section Remarques.
DEBUG_END_DISCONNECT Ne terminez pas la session. Déconnectez le client de la session et désactivez-le.

Cet indicateur est destiné aux clients distants qui se déconnectent. Il génère un message de serveur sur la déconnexion.

Valeur retournée

Cette méthode peut également retourner des valeurs d’erreur. Pour plus d’informations, consultez Valeurs de retour .

Code de retour Description
S_OK
La méthode a réussi.

Remarques

Cette méthode peut être appelée à tout moment, les indicateurs étant définis sur DEBUG_END_REENTRANT. Par exemple, si l’application doit quitter l’application, mais qu’un autre thread utilise le moteur, cette méthode peut être utilisée pour effectuer autant de nettoyage que possible.

L’utilisation de DEBUG_END_REENTRANT peut laisser le moteur dans un état indéterminé. Si cet indicateur est utilisé, aucun appel ultérieur ne doit être effectué au moteur.

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)