2010-12-05 11 views
0

Ich habe eine C# WinForm-Anwendung auf .NET 2.0 und XP. Es gibt auch einen UltraVNC-Server, der auf demselben PC läuft wie meine Anwendung. Der Benutzer kann auf die Anwendung entweder lokal am PC oder remote über den UltraVNC-Server zugreifen.Wie unterscheidet eine .NET WinForm-Anwendung zwischen einem lokalen Tastenanschlag und einem vom Ultra VNC-Server?

Wenn einige Textfelder in der Anwendung einen Tastenanschlag erhalten, möchte die Anwendung wissen, ob der Tastenanschlag von der lokalen Tastatur oder vom UltraVNC-Server stammt. Ist das möglich? Auch die gleiche Frage für Mausklicks.

Antwort

0

Es werden die wichtigsten Takter nicht disinguish, aber Sie können die RDP-Sitzung über erkennen können:

System.Windows.Forms.SystemInformation.TerminalServerSession 
+0

Ich glaube nicht, dass funktioniert. Dies zeigt an, ob der aufrufende Prozess einer Terminaldienste-Clientsitzung zugeordnet ist, was nicht der Fall ist. UltraVnc funktioniert nicht wie T/S (es sei denn, Sie verwenden T/S für die Konsolensitzung), es ermöglicht einem Remotebenutzer effektiv, die lokale Konsolensitzung zu übernehmen. – kevinw