Fonction WTSEnumerateSessionsExW (wtsapi32.h)
Récupère la liste des sessions sur un serveur hôte de session Bureau à distance (hôte de session Bureau à distance) ou un serveur hôte de virtualisation Bureau à distance (hôte de virtualisation bureau à distance).
Syntaxe
BOOL WTSEnumerateSessionsExW(
[in] HANDLE hServer,
[in, out] DWORD *pLevel,
[in] DWORD Filter,
[out] PWTS_SESSION_INFO_1W *ppSessionInfo,
[out] DWORD *pCount
);
Paramètres
[in] hServer
Handle vers le serveur cible. Spécifiez un handle retourné par la fonction WTSOpenServer ou WTSOpenServerEx . Pour énumérer les sessions sur le serveur hôte de session Bureau à distance sur lequel l’application s’exécute, spécifiez WTS_CURRENT_SERVER_HANDLE.
[in, out] pLevel
Ce paramètre est réservé. Définissez toujours ce paramètre sur un. En sortie, WTSEnumerateSessionsEx ne modifie pas la valeur de ce paramètre.
[in] Filter
Ce paramètre est réservé. Définissez toujours ce paramètre sur zéro.
[out] ppSessionInfo
Pointeur vers une variable PWTS_SESSION_INFO_1 qui reçoit un pointeur vers un tableau de structures WTS_SESSION_INFO_1 . Chaque structure du tableau contient des informations sur une session sur le serveur hôte de session Bureau à distance spécifié. Si vous avez obtenu un handle pour un serveur hôte de virtualisation bureau à distance en appelant la fonction WTSOpenServerEx , le tableau contient des informations sur les sessions sur les machines virtuelles sur le serveur. Lorsque vous avez terminé d’utiliser le tableau, libérez-le en appelant la fonction WTSFreeMemoryEx . Vous devez également définir le pointeur sur NULL.
[out] pCount
Pointeur vers une variable DWORD qui reçoit le nombre de structures WTS_SESSION_INFO_1 retournées dans la mémoire tampon ppSessionInfo .
Valeur retournée
Si la fonction réussit, la valeur de retour est une valeur différente de zéro.
Si la fonction échoue, la valeur de retour est égale à zéro. Pour obtenir des informations détaillées sur l’erreur, appelez la fonction GetLastError.
Remarques
Pour obtenir des informations sur les sessions s’exécutant sur des machines virtuelles sur un serveur hôte de virtualisation bureau à distance, vous devez obtenir le handle en appelant la fonction WTSOpenServerEx . Pour libérer la mémoire tampon retournée, appelez la fonction WTSFreeMemoryEx et définissez le paramètre WTSClassType sur WTSTypeSessionInfoLevel1.
Pour énumérer une session, vous devez disposer de l’autorisation Informations sur la requête pour cette session. Pour plus d’informations, consultez Autorisations des services Bureau à distance. Pour modifier les autorisations sur une session, utilisez l’outil d’administration Configuration des services Bureau à distance.
Pour énumérer les sessions s’exécutant sur une machine virtuelle hébergée sur un serveur hôte de virtualisation bureau à distance, vous devez être membre du groupe Administrateurs sur le serveur hôte de virtualisation des services Bureau à distance.
Notes
L’en-tête wtsapi32.h définit WTSEnumerateSessionsEx comme un alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 7 |
Serveur minimal pris en charge | Windows Server 2008 R2 |
Plateforme cible | Windows |
En-tête | wtsapi32.h |
Bibliothèque | Wtsapi32.lib |
DLL | Wtsapi32.dll |
Ensemble d’API | ext-ms-win-session-wtsapi32-l1-1-0 (introduit dans Windows 8) |