RDC コントロール (AxMSTSCLib.AxMsRdpClient7) を使用してリモート サーバーに接続するアプリを C# WPF と VS2012 で作成しました。
アプリは Win 7 で完全に動作していましたが、Windows 8 マシンにインストールすると、リモート サーバーに接続するとすぐに自動的に切断されます。私たちが見ることができるのは、アプリのメイン画面の点滅だけです.
IMsTscAxEvents_OnDisconnectedEvent を確認したところ、エラー コード = 1 が返されました。表によると、{1, "ローカル切断。これはエラー コードではありません。"},
Win 7 互換モードで実行しようとしましたが、何も変わりませんでした。
別の場所にある2つの異なるWin 8ボックスでテストしましたが、問題は同じです。すべてのWin 7で問題なく動作します。
Win 8 マシンで、OS に付属のアプリと RDC コントロールの同じ資格情報を使用して手動で接続しようとすると、接続を切断することなく期待どおりに動作します。アプリで使用している AxMSTSCLib.AxMsRdpClient7 が Win 8 でサポートされていない可能性がありますか?
これについて何か知っている人はいますか?現時点では、私はどの道を進むべきか見当がつきません。
これがコードです。RDC コントロールがフォーム ユーザー コントロールでホストされている
// この行は別の場所で実行されます。ここに掲載したのは参照用です。プライベート AxMSTSCLib.AxMsRdpClient7 rdc;
public void ConnectToServer(string UserName, string Password, string ServerIP)
{
int portNumber = 3389; // 5306
try
{
if (ServerIP.Contains(":"))
{
portNumber = Convert.ToInt16(ServerIP.Substring(ServerIP.IndexOf(":") + 1, 4));
rdc.Server = ServerIP.Remove(ServerIP.IndexOf(":"));
}
else
{
rdc.Server = ServerIP;
}
rdc.UserName = UserName;
rdc.AdvancedSettings7.RDPPort = portNumber;
rdc.AdvancedSettings7.RedirectPrinters = true;
rdc.AdvancedSettings7.RedirectClipboard = true;
rdc.AdvancedSettings7.RedirectSmartCards = true;
rdc.AdvancedSettings7.AuthenticationLevel = 2;
IMsTscNonScriptable secured = (IMsTscNonScriptable)rdc.GetOcx();
secured.ClearTextPassword = Password;
rdc.Connect();
}
catch (Exception Ex)
{
MessageBox.Show("Error connecting to gateway server" + "\n Error: " + Ex.Message, "Error Connecting", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}