0

我有一个简单的 Windows 窗体应用程序,其中有一个 ActiveX 控件。那是 Microsoft RDP 客户端控件 - 版本 10。这是表单的构造函数

public ConnectionWindow()
            {
                InitializeComponent();     
                MsRdpClient.Server = "server";
                MsRdpClient.UserName = "Administrator";
                MsRdpClient.Domain = "domain.com";
                IMsTscNonScriptable secured = (IMsTscNonScriptable)MsRdpClient.GetOcx();
                secured.ClearTextPassword = "password";
                MsRdpClient.Connect();                   
            }

我从中得到的唯一一件事是订阅 MsRdpClient_OnDisconnected 事件时断开参数的“发生内部错误”:

private void MsRdpClient_OnDisconnected(object sender, IMsTscAxEvents_OnDisconnectedEvent e)
        {
            var rdp = sender as AxMsRdpClient9;
            var errorString = rdp.GetErrorDescription((uint)e.discReason, (uint)rdp.ExtendedDisconnectReason);
            Console.WriteLine("Disconnected event reason: " + errorString);
        }

我尝试订阅控件中的大多数事件,但我得到的唯一另一件事是 MsRdpClient_OnAuthenticationWarningDisplayed 事件调用,但它没有给我任何信息。

PS控件本身只是给出空白视图。当通过 mstsc 连接到 remtoe pc 时,一切都很好,凭据适合。有人对此有任何想法吗?

4

1 回答 1

0

应用程序的主入口点是一个控制台应用程序。由于某些奇怪的原因,RDP 控制需要调用Application.EnableVisualStyles()主应用程序入口点才能正常工作。

于 2016-09-20T11:08:25.813 回答