1

Ich hostet das IMsRdpClient6 ActiveX-Steuerelement in meiner WinForms-Anwendung, um Verbindungen zu Remote-Computern herzustellen.Wie Verwenden von Terminaldienstegateway mit dem IMsRdpClient6-ActiveX-Steuerelement?

Ich habe eine Terminal-Services-Gateway-Maschine eingerichtet, und ich kann es erfolgreich verwenden.

Ich möchte meine ActiveX-Steuerelement, dieses Gateway zu verwenden. Ich habe die Gateway-Optionen eingestellt, aber die Verbindung scheitert mit keinem Fehler, den ich sehen kann. Hier ist der Code, den ich verwende:

 MSTSCLib6.IMsRdpClient6 client6 = RdpClient.GetOcx() as MSTSCLib6.IMsRdpClient6;    

     if (client6 != null) 
     { 
      MSTSCLib6.IMsRdpClientTransportSettings2 transport = client6.TransportSettings2; 

      if (Convert.ToBoolean(transport.GatewayIsSupported) == true) 
      { 
       client6.TransportSettings.GatewayHostname = "mygateway"; 
       client6.TransportSettings.GatewayUsageMethod = 2; 

       client6.TransportSettings.GatewayCredsSource = 0; 
       client6.TransportSettings.GatewayUserSelectedCredsSource = 0; 
       client6.TransportSettings2.GatewayDomain = "mydomain"; 
       client6.TransportSettings2.GatewayPassword = "mypassword"; 
       client6.TransportSettings2.GatewayUsername = "myusername"; 
      } 
     } 

Antwort

0

Die Antwort darauf war die GatewayUserSelectedCredsSource wegzulassen und schließen GatewayProfileUsageMethod = 1;

 MSTSCLib6.IMsRdpClient6 client6 = RdpClient.GetOcx() as MSTSCLib6.IMsRdpClient6;    

     if (client6 != null) 
     { 
      MSTSCLib6.IMsRdpClientTransportSettings2 transport = client6.TransportSettings2; 

      if (Convert.ToBoolean(transport.GatewayIsSupported) == true) 
      { 
       client6.TransportSettings.GatewayHostname = "mygateway"; 
       client6.TransportSettings.GatewayUsageMethod = 1; 

       client6.TransportSettings.GatewayCredsSource = 0; 
       client6.TransportSettings.GatewayProfileUsageMethod = 1; 
       client6.TransportSettings2.GatewayDomain = "mydomain"; 
       client6.TransportSettings2.GatewayPassword = "mypassword"; 
       client6.TransportSettings2.GatewayUsername = "myusername"; 
      } 
     } 
0

Es ist möglich, dies mit dem ActiveX zu tun, das auf einer Webseite eingebettet ist?

0

Ich habe gerade versucht, diesen Code hinzuzufügen und einen ungültigen Feldfehler erhalten. Ich vermute, es hat etwas damit zu tun, den Servernamen nicht zu setzen, aber es ist nicht in Ihrem Beispiel festgelegt. Kannst du erklären, wie du das umgehen kannst?

Grüße Andrew. Wird Code bei Bedarf eingeben.

Verwandte Themen