Verwenden der Client-API für Remotedesktopverbindungsbroker

Die Client-API für Remotedesktopverbindungsbroker ermöglicht Drittanbietern, den Verbindungsbroker zu nutzen, um die Behandlung von Verbindungen zu beschleunigen, die ihr Protokoll zum Herstellen einer Verbindung mit virtuellen Computern oder Remotedesktopservern in einer Farm verwenden.

Anweisungen

Schritt 1: Abrufen der IConnectionBrokerClient-Schnittstelle

Wenn Ihr Anwendungs- oder Protokollanbieter initialisiert wird, führen Sie die folgenden Schritte aus.

  1. Rufen Sie die CBCreateClientInstance-Funktion auf, um die IConnectionBrokerClient-Schnittstelle abzurufen.
  2. Behalten Sie die IConnectionBrokerClient-Schnittstelle so lange, wie Sie es benötigen.
  3. Wenn die IConnectionBrokerClient-Schnittstelle nicht mehr benötigt wird, rufen Sie die Release-Methode auf.

Schritt 2: Anfordern der Zielinformationen

Wenn Ihr Protokollanbieter eine eingehende Verbindungsanforderung empfängt, führen Sie die folgenden Schritte aus, um die IConnectionBrokerClient::GetTargetInfo-Methode aufzurufen. Diese Methode ruft vom Verbindungsbroker den entsprechenden Server ab, um die Verbindung umzuleiten.

  1. Erstellen Sie ein Ereignis, das mithilfe der CreateEvent- oder ähnlichen Funktion signalisiert werden kann, um für den hStatusEvent-Parameter zu verwenden.
  2. Weisen Sie arbeitsspeicher für die Parameter pTargetInfo und pResult zu. Diese Speicherblöcke müssen bis zum Abschluss dieser gesamten Sequenz vorhanden bleiben.
  3. Füllen Sie eine CB_CONNECTION_INFO Struktur aus, die alle Informationen über die eingehende Verbindung enthält.
  4. Rufen Sie die GetTargetInfo-Methode auf, und übergeben Sie alle erforderlichen Parameter. Dies ist eine asynchrone Methode, die eine Instanz der IConnectionBrokerRequest-Schnittstelle zurückgibt.
  5. Warten Sie, bis das hStatusEvent-Ereignis festgelegt wird.
  6. Wenn das hStatusEvent-Ereignis festgelegt ist, rufen Sie die IConnectionBrokerRequest::CheckStatus-Methode auf, um den Status der Anforderung zu ermitteln.
  7. Wenn CheckStatusCB_STATUS_REQUEST_COMPLETED zurückgibt, enthält die pTargetInfo - und pResult-Parameter ihre Informationen. Sie können die Wartenschleife ausbrechen, da der hStatusEvent-Parameter nicht mehr verwendet wird.
  8. Verwenden Sie die Informationen in der CB_TARGET_INFO Struktur, die durch den pTargetInfo-Parameter dargestellt wird, um zu ermitteln, wo die eingehende Verbindung umgeleitet werden soll.
  9. Freigeben der IConnectionBrokerRequest-Schnittstelle .
  10. Schließen Sie den hStatusEvent-Ereignishandpunkt , oder Sie können es für nachfolgende Verbindungsanforderungen wiederverwenden.