Dies ist eine alte Version des Dokuments!
CMD:
Remotedesktop-Status abzufragen:
wmic RDToggle get AllowTSConnections
Um den Status von Remotedesktop zu ändern, ruft man die Funktion SetAllowTSConnections auf. Mit dem ersten Parameter lässt man RDP-Verbindungen zu, wenn er den Wert 1 hat. Mit 0 blockiert man Remotedesktop-Verbindungen, wobei bestehende Sessions unterbrochen werden.
Der zweite Parameter legt fest, ob auf dem Zielrechner die Firewall-Regeln für Remotedesktop angepasst werden sollen. Folgender Aufruf aktiviert Remotedesktop plus die dazugehörige Firewall-Regel, um Verbindungen durchzulassen:
wmic /node:<Servername> RDToggle where ServerName="<Servername>" call SetAllowTSConnections 1, 1
PS:
Alternativ zu wmic.exe kann man auch PowerShell verwenden, um Remotedesktop über WMI zu aktivieren. Zuständig ist dafür das Cmdlet Get-WmiObject, das über den Parameter -ComputerName auch entfernte Rechner ansprechen kann.
Sein Aufruf ist komplizierter als der von wmic, weil mangels eines Alias der Namespace und die WMI-Klasse explizit angegeben werden müssen. Der Namespace root\cimv2\TerminalServices wurde mit Vista eingeführt, so dass der folgende Befehl nicht unter XP funktioniert:
$RDC = Get-WmiObject -Namespace "root\cimv2\TerminalServices" -Class win32_terminalservicesetting -ComputerName <Remote-PC>
Nach dem Erzeugen des WMI-Objekts ruft man wie unter wmic.exe die Methode setAllowTSConnections auf, wobei die Parameter erwartungsgemäß die gleiche Bedeutung haben:
$RDC.setAllowTSConnections(0,1)
Ist der angezeigte Return-Code 0, dann ist die Operation geglückt. Man kann sich vom aktuellen Status durch den Aufruf von
$RDC | select ServerName, AllowTSConnections
überzeugen.
