我正在运行Windows登录脚本,并且正在编译一组在用户登录时记录的详细信息。由于这是一个远程服务器,所有登录都是通过RDP完成的。我需要获取已登录用户的IP地址。我使用了以下内容:
Function WAN_IP()
Set objxmlHTTP = CreateObject("Microsoft.XMLHTTP")
Call objxmlHTTP.open("get", "http://checkip.dyndns.org", False)
objxmlHTTP.Send()
strHTMLText = objxmlHTTP.ResponseText
Set objxmlHTTP = Nothing
If strHTMLText <> "" Then
varStart = InStr(1, strHTMLText, "Current IP Address:", vbTextCompare) + 19
If varStart Then varStop = InStr(varStart, strHTMLText, "</body>", vbTextCompare)
If varStart And varStop Then strIP = Mid(strHTMLText, varStart, varStop - varStart)
Else
strIP = "Unavailable"
End If
WAN_IP = Trim(strIP)
End Function
正如预期的那样,这将返回服务器本身的外部IP,而不是已连接的用户的IP。
有人能告诉我如何通过RDP连接用户的IP吗?
答案 0 :(得分:0)
根据@MarcB的回复,我使用How to get the IP Address of the Remote Desktop Client?来了解该怎么做。
然后我在这里找到了一些示例代码:http://pleasepressanykey.blogspot.com/2008/09/get-users-last-successful-and-failed.html