1

リモート マシンに接続するために、WinForms アプリケーションで IMsRdpClient6 ActiveX コントロールをホストしています。

ターミナル サービス ゲートウェイ マシンをセットアップしましたが、正常に使用できます。

ActiveX コントロールでこのゲートウェイを使用したいと考えています。ゲートウェイ オプションを設定しましたが、エラーが表示されずに接続が失敗します。私が使用しているコードは次のとおりです。

        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";
            }
        }
4

3 に答える 3

0

このコードを追加しようとしたところ、フィールドが無効なエラーが発生しました。サーバー名を設定しないことと関係があると思いますが、あなたの例では設定されていません。これを回避する方法を説明できますか。

アンドリューをよろしく。必要に応じてコードを投稿します。

于 2009-07-24T02:40:11.523 に答える
0

これに対する答えは、GatewayUserSelectedCredsSource を省略し、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";
            }
        }
于 2009-07-01T19:43:27.200 に答える
0

Web ページに埋め込まれた ActiveX でこれを行うことは可能ですか?

于 2009-07-17T22:57:08.230 に答える