Angenommen, ich kenne die IP eines PCs, ist es möglich zu testen, ob dieser PC Remote-Verbindung unterstützt? (windows Fall)Test für mögliche Remote-Verbindung
Antwort
Dies scheint zu funktionieren:
http://www.yougetsignal.com/tools/open-ports/
Geben Sie die IP-Adresse und für native Windows-Remote-Desktop-Check verwenden Port "3389", um dann.
danke für antworten..ich verstehe, dass ich port 3389 überprüfen muss .. ich glaube, es wird irgendwie langsam sein, wenn ich es mit c machen C# irgendwelche vorschläge guys? – user104108
Wie definieren Sie "ein bisschen langsam"? :) –
Eine Möglichkeit zu testen, ob Remote Desktop verfügbar ist, könnte sein, einen Socket zum Standard-RD-Port zu öffnen (3389). Wenn eine Verbindung hergestellt werden kann, nehmen Sie an, dass RD verfügbar ist, und löschen Sie den Socket. Wenn die Verbindung verweigert wird, ist RD wahrscheinlich nicht verfügbar.
Ein anderer Ansatz wäre, auf Informationen über RD via WMI zuzugreifen. Dies würde jedoch erfordern, dass der Clientcomputer ausreichende Benutzerrechte auf dem (möglichen) Server hat. Inspiration für diesen Ansatz ist hier zu finden:
http://www.vedivi.com/support/blog/71-how-to-enable-remote-desktop-programmatically.html
ich es herausgefunden, wie dies
private bool TestPort(string ipString,int port)
{
IPAddress ip = IPAddress.Parse(ipString);
bool test = false;
try
{
System.Net.Sockets.Socket s = new System.Net.Sockets.Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
s.Connect(ip, port);
if (s.Connected == true)
test = true;
s.Close();
}
catch (SocketException ex)
{
test = false;
}
return test;
}
, wenn die Funktion in C++ war wäre es schneller sein? wie viel schneller? irgendwelche Vorschläge?
Meinst du vnc oder rdp? – Matt
remote desktop connection – user104108