Fonction de rappel VIRTUALCHANNELINIT (cchannel.h)
Initialise l’accès d’une DLL cliente aux canaux virtuels des services Bureau à distance. Le client appelle VirtualChannelInit pour inscrire les noms de ses canaux virtuels.
Les services Bureau à distance fournissent un pointeur vers une fonction VirtualChannelInit dans la structure CHANNEL_ENTRY_POINTS passée à votre point d’entrée VirtualChannelEntry .
Syntaxe
VIRTUALCHANNELINIT Virtualchannelinit;
UINT VCAPITYPE Virtualchannelinit(
[in] LPVOID *ppInitHandle,
[in, out] PCHANNEL_DEF pChannel,
[in] INT channelCount,
[in] ULONG versionRequested,
[in] PCHANNEL_INIT_EVENT_FN pChannelInitEventProc
)
{...}
Paramètres
[in] ppInitHandle
Pointeur vers une variable qui reçoit un handle qui identifie la connexion cliente. Utilisez ce handle pour identifier le client dans les appels suivants à la fonction VirtualChannelOpen .
[in, out] pChannel
Pointeur vers un tableau de structures CHANNEL_DEF . Chaque structure contient le nom et les options d’initialisation d’un canal virtuel que la DLL cliente ouvrira. Notez que l’appel VirtualChannelInit n’ouvre pas ces canaux virtuels ; il réserve uniquement les noms pour l’utilisation par cette application.
[in] channelCount
Spécifie le nombre d’entrées dans le tableau pChannel .
[in] versionRequested
Spécifie le niveau de prise en charge des canaux virtuels. Définissez ce paramètre sur VIRTUAL_CHANNEL_VERSION_WIN2000.
[in] pChannelInitEventProc
Pointeur vers une fonction VirtualChannelInitEvent définie par l’application que les services Bureau à distance appellent pour notifier la DLL cliente des événements de canal virtuel.
Valeur retournée
Si la fonction réussit, la valeur de retour est CHANNEL_RC_OK.
Si une erreur se produit, la fonction retourne l’une des valeurs suivantes.
Remarques
Vous pouvez appeler la fonction VirtualChannelInit uniquement à partir de votre fonction VirtualChannelEntry . Les appels à VirtualChannelInit à tout autre moment échouent.
Lorsque VirtualChannelInit retourne avec succès, les services Bureau à distance ont inscrit les canaux demandés. Toutefois, les services Bureau à distance n’ont peut-être pas terminé d’autres initialisations. Une fois l’initialisation terminée, les services Bureau à distance appellent votre fonction de rappel VirtualChannelInitEvent avec l’événement CHANNEL_EVENT_INITIALIZED .
Vous ne devez pas faire d’hypothèses sur le nombre de canaux virtuels disponibles avant d’appeler cette fonction, car le système et d’autres plug-ins peuvent avoir des canaux virtuels réservés. Par conséquent, vous devez toujours case activée pour un CHANNEL_RC_TOO_MANY_CHANNELS le code de retour après l’appel de cette fonction.
Lorsque VirtualChannelInit est retourné, le membre options de chaque structure CHANNEL_DEF inclut CHANNEL_OPTION_INITIALIZED si le canal a été correctement initialisé.
Le nombre maximal de canaux par session client est CHANNEL_MAX_COUNT.
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 | cchannel.h |
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour