C# Get RDC/RDP und "Console" Session-Informationen
Ich versuche, um etwas RDC/RDP und "Konsole" login-Daten programmgesteuert über C#.
Möchte ich die Entwicklung eines einfachen console-Anwendung (.EXE), wie kann ich das abrufen der Informationen von Task-Manager -> Registerkarte Benutzer von jedem remote-computer, auf unsere Domäne (Windows Server 2003 x86, oder 2008R2 x64).
Dieser zeigt an, ob eine person angemeldet ist auf dem server direkt (also die Konsole) oder über RDC/RDP (einschließlich der client, wenn er noch aktiv ist) oder getrennt werden, wenn es "ausgesetzt" (d.h. Sie haben sich nicht abgemeldet, sondern nur geschlossen die RDC/RDP windows vorübergehend)
Ich muss admin-Berechtigungen auf allen Servern und konfigurieren können alle windows-Dienste/firewalls Regeln, die müssen aktiviert/deaktiviert werden (wenn erforderlich)
Ich glaube, ich habe wahrscheinlich mit WMI (mit System.Management), aber die Beispiele, die ich gefunden habe von google nur abrufen der vorhandenen Benutzer.
//Method 1
var searcher = new ManagementObjectSearcher(
"SELECT UserName FROM Win32_ComputerSystem");
var collection = Searcher.Get();
foreach(ManagementObject entry in collection)
{
Console.WriteLine(entry["UserName"]);
}
//Method 2
string computer = "somecomputername";
var searcher = new ManagementObjectSearcher(
computer + @"root\CIMV2", "SELECT * FROM Win32_TerminalService");
var collection = Searcher.Get();
foreach(ManagementObject entry in collection)
{
//Write them out (although usernames isnt listed from the example I found)
}
InformationsquelleAutor Kyle | 2012-12-21
Du musst angemeldet sein, um einen Kommentar abzugeben.
Diese geben Ihnen alles, was Sie brauchen. Rufen Sie einfach
ListSessions
auf und übergeben Sie den Namen des Servers. Um zusätzliche Informationen über die Sitzung, übergeben Sie dieServerName
undSessionId
zuGetSessionInfo
.Ich habe aktualisiert die Antwort zu beinhalten, die Methoden, die Sie brauchen, um die zusätzliche session-Daten.
Sehr umfassende Antwort und sicherlich lohnt sich ein upvote.
Super Antwort, dies hat mir geholfen, auflisten und Identifizierung von sessions aus einer lokal gespeicherten Anwendung ohne Gebäude CMD-Argumente
Diese Funktionalität gab mir ein guter Anfang zu bauen, einige wirklich nützliche tools, die bei der Bestimmung remote-Benutzer-Status. Ein großes Lob an die OP.
InformationsquelleAutor Sean Kornish