Получите IP-адрес RDP-клиента с помощью vb.net

Я пытаюсь получить IP-адрес клиента RDP, чтобы мы могли вести учет всех, кто подключается к нашему серверу и в какое время. Есть ли способ сделать это с помощью VB.net? Все, что я пробовал, просто возвращает IP-адрес сервера.

Спасибо!


person Anthony Collins    schedule 08.08.2013    source источник
comment
Есть ли у вас больше информации о настройках подключения RDP, ведении журнала или чем-то еще? Я бы попытался ответить на ваш вопрос, но у меня недостаточно информации о ваших настройках RDP, чтобы сделать это. Например, клиент RDP подключается через VPN или локально? Это имеет большое значение.   -  person jeffery    schedule 09.08.2013
comment
В настоящее время RDP работает в локальной сети, но со временем будет распространен на внешних клиентов. RDP при загрузке загружает только Internet Explorer, а не весь рабочий стол.   -  person Anthony Collins    schedule 13.08.2013


Ответы (1)


Выдержка из фактический код то, что вы ищете.

 Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim serverName As String
        Dim clientInfo As New WTS_CLIENT_INFO
        ReDim clientInfo.Address(20)
        serverName = ""
        'Server Name can be name of choice or name of server on which this application is running
        If GetSessions(serverName, clientInfo) = True Then
            Dim str As String
            str = "User Name: " & clientInfo.WTSUserName
            str &= vbNewLine & "Station Name: " & clientInfo.WTSStationName
            str &= vbNewLine & "Domain Name: " & clientInfo.WTSDomainName
            If clientInfo.WTSStationName <> "Console" Then
                str &= vbNewLine & "Client Name: " & clientInfo.WTSClientName
                str &= vbNewLine & "Client IP: " & clientInfo.Address(2) & "." & clientInfo.Address(3) & "." & clientInfo.Address(4) & "." & clientInfo.Address(5)
            End If
            MessageBox.Show(str)
        End If
    End Sub
person Shankar Narayana Damodaran    schedule 08.08.2013
comment
Спасибо за ваш ответ, я попробовал ваше решение, и оно работает, но оно дает мне IP-адрес, который находится где-то в Японии, когда я обновляю страницу, он дает мне совершенно другой IP-адрес. - person Anthony Collins; 09.08.2013
comment
вы хотите знать только IP-адрес? почему бы вам не отправить http-вызов, а затем получить ответ в строке (разобрать), наконец... как вас просят.... - person gumuruh; 22.04.2020