Hallo,
wir arbeiten bei uns in der Firma mit einer Anwendung, welche auf einem Terminalserver liegt. Nun kommt es leider ab und an mal vor, das der Nutzer sich nicht ordentlich anmeldet. Die Verbindung bleibt also bestehen, ein erneutes Verbinden ist nicht möglich.
Ich wollte also ein kleines Programm schreiben, womit sich der Benutzer selber vom Terminalserver abmelden kann falls es mal Probleme gibt (gerade in Zeiten wo die technische Betriebsführung nicht erreichbar ist). Unter DOS kann ich ja mit query session /server:servername meine ID auf dem Server ermitteln und mit logoff die Verbindung trennen. Das traue ich unseren Leuten allerdings nicht zu. Für VB habe ich bisher kein passendes Äquivalent gefunden. Also habe wollte ich mittels Process den Dos-Befehl verwenden und das Ergebnis auslesen.
Im Dos-Fenster steht, das der Befehl "query" nicht bekannt ist.
Also wollte ich den Umweg gehen und schreibe eine Batch-Datei welche den Befehl enthält und das Ergebnis in eine Textdatei schreibt. Führe ich die Batch Datei mit Process.Start aus bekomme ich die gleiche Fehlermeldung. Führe ich sie händig aus klappt alles. Hat jemand eine Idee woran das liegen könnte oder vielleicht ein VB Äquivalent zum Dos Befehl?
wir arbeiten bei uns in der Firma mit einer Anwendung, welche auf einem Terminalserver liegt. Nun kommt es leider ab und an mal vor, das der Nutzer sich nicht ordentlich anmeldet. Die Verbindung bleibt also bestehen, ein erneutes Verbinden ist nicht möglich.
Ich wollte also ein kleines Programm schreiben, womit sich der Benutzer selber vom Terminalserver abmelden kann falls es mal Probleme gibt (gerade in Zeiten wo die technische Betriebsführung nicht erreichbar ist). Unter DOS kann ich ja mit query session /server:servername meine ID auf dem Server ermitteln und mit logoff die Verbindung trennen. Das traue ich unseren Leuten allerdings nicht zu. Für VB habe ich bisher kein passendes Äquivalent gefunden. Also habe wollte ich mittels Process den Dos-Befehl verwenden und das Ergebnis auslesen.
Quellcode
- Dim oInfo As System.Diagnostics.ProcessStartInfo = New System.Diagnostics.ProcessStartInfo("cmd", "query session /server:servername")
- oInfo.UseShellExecute = False
- oInfo.ErrorDialog = False
- oInfo.CreateNoWindow = True
- oInfo.RedirectStandardOutput = False
- Dim p As Process = System.Diagnostics.Process.Start(oInfo)
- Dim oReader As System.IO.StreamReader = p.StandardOutput
- TextBox1.Text = oReader.ReadToEnd()
- oReader.Close()
Im Dos-Fenster steht, das der Befehl "query" nicht bekannt ist.
Also wollte ich den Umweg gehen und schreibe eine Batch-Datei welche den Befehl enthält und das Ergebnis in eine Textdatei schreibt. Führe ich die Batch Datei mit Process.Start aus bekomme ich die gleiche Fehlermeldung. Führe ich sie händig aus klappt alles. Hat jemand eine Idee woran das liegen könnte oder vielleicht ein VB Äquivalent zum Dos Befehl?
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „AndPod“ ()