2009-08-18 47 views
0

私は単純なターミナルサーバーアプリケーションをプログラミングしていますが、MSTSCLibのActiveXコンポーネントに問題があります。フォームが読み込まれ、リモートデスクトップ接続が機能しますが、別のコントロールをクリックすると、リモートデスクトップコントロールが応答を停止します。私がそれをクリックすると、コントロールはちょうど騒音を送ります。なぜ私はクリックからフォーカスを取り戻すことができないのですか?C#RDP ActiveXコントロールのフォーカスが失われる

タブキーを使用すると、リモートデスクトップコントロールが再び応答します。これらの2つの接続方法の違いは何ですか?

ありがとうございました。

答えて

1

通知アイコンにアタッチされたボタンまたはコンテキストメニューを作成して、リモートデスクトップにフォーカスを設定することができます。あなたが失う

private void button1_Click(object sender, EventArgs e) 
    { 
     remotedesktop.Focus(); 
    } 

ごとに、時間はちょうど

2

そのActiveXコントロールとknown issueのように思えるをクリックして焦点を当て、提案された回避策は、私の仕事:

public class RdpClient : AxMSTSCLib.AxMsRdpClient71 
{ 
    protected override void WndProc(ref Message m) 
    { 
     if (m.Msg == 0x0021) 
     { 
      Focus(); 
     } 

     base.WndProc(ref m); 
    } 
} 
+1

はまだ完璧に動作+1 – JanW

関連する問題