원격 데스크톱 연결 브로커 클라이언트 API를 사용하는 방법

원격 데스크톱 연결 브로커 클라이언트 API를 사용하면 타사 프로토콜 공급업체가 Connection Broker를 활용하여 해당 프로토콜을 사용하여 팜의 가상 머신 또는 원격 데스크톱 서버에 연결하는 연결 처리를 신속하게 처리할 수 있습니다.

지침

1단계: IConnectionBrokerClient 인터페이스 가져오기

애플리케이션 또는 프로토콜 공급자가 초기화되면 다음 단계를 수행합니다.

  1. CBCreateClientInstance 함수를 호출하여 IConnectionBrokerClient 인터페이스를 가져옵니다.
  2. 필요한 한 IConnectionBrokerClient 인터페이스를 유지합니다.
  3. IConnectionBrokerClient 인터페이스가 더 이상 필요하지 않은 경우 Release 메서드를 호출합니다.

2단계: 대상 정보 요청

프로토콜 공급자가 들어오는 연결 요청을 받으면 다음 단계를 수행하여 IConnectionBrokerClient::GetTargetInfo 메서드를 호출합니다. 이 메서드는 연결 브로커에서 연결을 리디렉션할 적절한 서버를 가져옵니다.

  1. hStatusEvent 매개 변수에 사용할 CreateEvent 또는 유사한 함수를 사용하여 신호를 받을 수 있는 이벤트를 만듭니다.
  2. pTargetInfopResult 매개 변수에 대한 메모리를 할당합니다. 이러한 메모리 블록은 이 전체 시퀀스가 완료될 때까지 그대로 유지되어야 합니다.
  3. 들어오는 연결에 대한 모든 정보가 포함된 CB_CONNECTION_INFO 구조를 작성합니다.
  4. GetTargetInfo 메서드를 호출하여 필요한 모든 매개 변수를 전달합니다. IConnectionBrokerRequest 인터페이스의 인스턴스를 반환하는 비동기 메서드입니다.
  5. hStatusEvent 이벤트가 설정될 때까지 기다립니다.
  6. hStatusEvent 이벤트가 설정되면 IConnectionBrokerRequest::CheckStatus 메서드를 호출하여 요청 상태를 확인합니다.
  7. CheckStatusCB_STATUS_REQUEST_COMPLETED 반환하면 pTargetInfopResult 매개 변수에 해당 정보가 포함됩니다. hStatusEvent 매개 변수가 더 이상 사용되지 않으므로 대기 루프에서 분리할 수 있습니다.
  8. pTargetInfo 매개 변수가 나타내는 CB_TARGET_INFO 구조의 정보를 사용하여 들어오는 연결을 리디렉션할 위치를 결정합니다.
  9. IConnectionBrokerRequest 인터페이스를 해제합니다.
  10. hStatusEvent 이벤트 핸들을 닫거나 후속 연결 요청에 다시 사용할 수 있습니다.