Comment utiliser l’API cliente Broker de connexion Bureau à distance
L’API cliente Service Broker de connexion Bureau à distance permet aux fournisseurs de protocole tiers d’exploiter le répartiteur de connexions pour accélérer la gestion des connexions qui utilisent leur protocole pour se connecter à des machines virtuelles ou à des serveurs Bureau à distance dans une batterie de serveurs.
Instructions
Étape 1 : Obtenir l’interface IConnectionBrokerClient
Lorsque votre application ou fournisseur de protocole est initialisé, procédez comme suit.
- Appelez la fonction CBCreateClientInstance pour obtenir l’interface IConnectionBrokerClient .
- Conservez l’interface IConnectionBrokerClient tant que vous en avez besoin.
- Lorsque l’interface IConnectionBrokerClient n’est plus nécessaire, appelez la méthode Release .
Étape 2 : Demander les informations cibles
Lorsque votre fournisseur de protocole reçoit une demande de connexion entrante, procédez comme suit pour appeler la méthode IConnectionBrokerClient::GetTargetInfo . Cette méthode obtient, à partir du Répartiteur de connexions, le serveur approprié pour rediriger la connexion vers.
- Créez un événement qui peut être signalé à l’aide de la fonction CreateEvent ou similaire à utiliser pour le paramètre hStatusEvent .
- Allouer de la mémoire pour les paramètres pTargetInfo et pResult . Ces blocs de mémoire doivent rester en place jusqu’à ce que cette séquence entière soit terminée.
- Renseignez une structure CB_CONNECTION_INFO qui contient toutes les informations relatives à la connexion entrante.
- Appelez la méthode GetTargetInfo , en passant tous les paramètres requis. Il s’agit d’une méthode asynchrone qui retourne une instance de l’interface IConnectionBrokerRequest .
- Attendez que l’événement hStatusEvent devienne défini.
- Chaque fois que l’événement hStatusEvent est défini, appelez la méthode IConnectionBrokerRequest::CheckStatus pour déterminer l’état de la requête.
- Lorsque CheckStatus retourne CB_STATUS_REQUEST_COMPLETED, les paramètres pTargetInfo et pResult contiennent leurs informations. Vous pouvez sortir de la boucle d’attente, car le paramètre hStatusEvent n’est plus utilisé.
- Utilisez les informations de la structure CB_TARGET_INFO représentée par le paramètre pTargetInfo pour déterminer où rediriger la connexion entrante.
- Relâchez l’interface IConnectionBrokerRequest .
- Fermez le handle d’événement hStatusEvent , ou vous pouvez le réutiliser pour les demandes de connexion suivantes.