WTSVirtualChannelOpenEx, fonction (wtsapi32.h)

Crée un canal virtuel d’une manière similaire à WTSVirtualChannelOpen.

Cette API prend en charge à la fois la création de canal virtuel statique (SVC) et de canal virtuel dynamique (DVC). Si le paramètre flags est égal à zéro, il se comporte comme WTSVirtualChannelOpen. Un DVC peut être ouvert en spécifiant l’indicateur approprié. Une fois qu’un DVC est créé, vous pouvez utiliser les mêmes fonctions de lecture, d’écriture, de requête ou de fermeture que celles utilisées pour le SVC.

Syntaxe

HANDLE WTSVirtualChannelOpenEx(
  [in] DWORD SessionId,
  [in] LPSTR pVirtualName,
  [in] DWORD flags
);

Paramètres

[in] SessionId

Identificateur de session des services Bureau à distance. Pour indiquer la session active, spécifiez WTS_CURRENT_SESSION. Vous pouvez utiliser la fonction WTSEnumerateSessions pour récupérer les identificateurs de toutes les sessions sur un serveur hôte de session Bureau à distance spécifié.

Pour pouvoir ouvrir un canal virtuel sur la session d’un autre utilisateur, vous devez disposer de l’autorisation Canaux virtuels. 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.

[in] pVirtualName

Dans le cas d’un SVC, pointe vers une chaîne terminée par null qui contient le nom du canal virtuel. La longueur d’un nom SVC est limitée à CHANNEL_NAME_LEN caractères, à l’exception de la valeur null de fin.

Dans le cas d’un DVC, pointe vers une chaîne terminée par null qui contient le nom du point de terminaison de l’écouteur. La longueur d’un nom DVC est limitée à MAX_PATH caractères.

[in] flags

Pour ouvrir le canal en tant que SVC, spécifiez zéro pour ce paramètre. Pour ouvrir le canal en tant que DVC, spécifiez WTS_CHANNEL_OPTION_DYNAMIC.

Lors de l’ouverture d’un DVC, vous pouvez spécifier un paramètre de priorité pour les données en cours de transfert en spécifiant l’une des valeurs WTS_CHANNEL_OPTION_DYNAMIC_PRI_XXX en combinaison avec la valeur WTS_CHANNEL_OPTION_DYNAMIC .

WTS_CHANNEL_OPTION_DYNAMIC_NO_COMPRESS

Désactive la compression pour ce DVC. Vous devez spécifier cette valeur en combinaison avec la valeur WTS_CHANNEL_OPTION_DYNAMIC .

WTS_CHANNEL_OPTION_DYNAMIC_PRI_LOW (par défaut)

Priorité basse. Les données seront envoyées des deux côtés avec une faible priorité. Utilisez ce niveau de priorité pour les transferts de blocs de toutes tailles, où la vitesse de transfert n’est pas importante. Dans presque tous les cas (95 %), le canal doit être ouvert avec cet indicateur.

WTS_CHANNEL_OPTION_DYNAMIC_PRI_MED

Priorité moyenne. Utilisez ce niveau de priorité pour envoyer des messages de contrôle courts qui doivent avoir la priorité sur les données dans les canaux à faible priorité.

WTS_CHANNEL_OPTION_DYNAMIC_PRI_HIGH

Haute priorité. Utilisez ce niveau de priorité pour les données critiques qui affectent directement l’expérience utilisateur. La taille du transfert peut varier. Les données d’affichage appartiennent à cette catégorie.

WTS_CHANNEL_OPTION_DYNAMIC_PRI_REAL

Priorité en temps réel. Utilisez ce niveau de priorité uniquement dans les cas où le transfert de données est absolument critique. La taille du transfert de données doit être limitée à quelques centaines d’octets par message.

Valeur retournée

NULL en cas d’erreur avec GetLastError défini.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista
Serveur minimal pris en charge Windows Server 2008
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)

Voir aussi

API de serveur DVC

Informations de référence sur les canaux virtuels dynamiques

WTSVirtualChannelOpen