Rechnername des RDP-Clients

Outsider77

Erfahrenes Mitglied
Hallo zusammen!
In meinem kleinen Programm lese ich bei bestehender RemoteDesktop-Verbindung
den Rechner-Namen des RDP-Clients folgendermaßen aus :

http://www.activevb.de/tipps/vb6tipps/tipp0636.html

Sorry für den Link, aber das ist ziemlich viel Code und ich wollte etwas Platz sparen.

Folgender Code für die Form1:
Code:
Friend Class Form1
    Dim Interval As Integer

    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Interval = 10
        Timer1.Interval = Interval * 1000
        Timer1.Start()

    End Sub

    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        clientname()
    End Sub

    Private Sub clientname()

        My.Computer.FileSystem.WriteAllText("G:\huddel\stats.txt", "Status= frei" & vbCrLf, False)
        Me.Label2.Text = "Frei"

        If GetWTSQueryHost(-1).Contains("xxx") Then
            My.Computer.FileSystem.WriteAllText("G:\huddel\stats.txt", "Status= besetzt" & vbCrLf, False)
            My.Computer.FileSystem.WriteAllText("G:\huddel\stats.txt", "User= xxx" & vbCrLf, True)
            Me.Label2.Text = "Besetzt"
        End If

    End Sub

End Class

Die stats.txt wird von einem anderen Programm ausgelesen.
Wenn ich die Verbindung aufgebaut habe, erkennt das Programm meinen Rechner-Namen
und schreibt in die stats.txt besetzt. Bis hier hin alles bestens.
Wenn ich aber die Verbindung wieder trenne, sollte mein Programm das erkennen und frei in die stats.txt schreiben.
Das tut es allerdings nicht. Es schreibt fortlaufend besetzt.
Ich vermute, dass es an der SessionID liegt (GetWTSQueryHost(-1)).
Vermutlich "behält" diese nach dem Trennen diese ID.
Meine Frage: wie kann ich feststellen, dass keine Verbindung mehr besteht und dadurch das Programm frei in die stats.txt schreibt?
Oder anders formuliert : wie bekomme ich es hin, dass sich der Status ändert, wenn die Remote-Desktop-Verbindung getrennt ist?

Vielen Dank schon mal vorab!
Gruß Outi

Edit:
Ich habe jetzt noch herausgefunden, dass sich der Status erst dann ändert,
wenn die Remote-PC selber wieder im Netzwerk angemeldet ist.
Heißt, nach dem Trennen der Verbindung ist der Wert
Code:
GetWTSQueryHost(-1)
immer noch "xxx". Nach dem Anmelden des Remote-PC's ändert sich dieser in "".
Vielleicht hilft das einem von Euch bei der Lösung meines Problems.
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück