2009-08-18 8 views
0

Je programme une application de serveur terminal simple et j'ai des problèmes avec le composant MSTSCLib activeX. Le formulaire se charge et la connexion Bureau à distance fonctionne. Cependant, dès qu'un autre contrôle est cliqué, le contrôle Bureau à distance cesse de répondre. Quand je clique dessus, le contrôle envoie juste un bruit. Pourquoi est-ce que c'est comme si je ne pouvais pas récupérer l'accent d'un clic?C# RDP ActiveX Contrôle perdre le focus

Si j'utilise la touche de tabulation, le contrôle du bureau distant répond à nouveau. Quelle est la différence entre ces deux méthodes de connexion?

Merci pour votre aide.

Répondre

1

Vous pouvez essayer de créer un bouton ou un menu contextuel associé à une icône de notification et de définir le focus sur le poste de travail distant.

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

Chaque fois que vous perdre le focus cliquez simplement

2

On dirait un known issue avec ce contrôle ActiveX, la solution de contournement proposée a fonctionné pour moi:

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

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

fonctionne toujours parfaitement +1 – JanW

Questions connexes