C# 获取远程连接到计算机的用户的 IP 地址

本文关键字:用户 地址 IP 计算机 获取 远程连接 | 更新日期: 2023-09-27 18:32:26

>我在Windows服务中使用了以下一段C#代码来捕获远程连接和断开连接事件。

如何获取远程连接到该计算机的最终用户的 IP 地址。

protected override void OnSessionChange(SessionChangeDescription changeDescription)
 {
        switch (changeDescription.Reason)
        {
            case SessionChangeReason.RemoteConnect:
                //Remote Connect
                break;
            case SessionChangeReason.RemoteDisconnect:
                //Remote Disconnect
                break;
            default:
                break;
        }
 }

C# 获取远程连接到计算机的用户的 IP 地址

我在 c# 中找到了相关的解决方案,它使用 PInvoke WTSQuerySessionInformationWTS_INFO_CLASS.WTSClientAddress

有关更多详细信息,您可以转到此处:以编程方式获取终端服务会话的信息

塞尔文的注意:溶液不会释放返回的缓冲区......你这个灵魂叫WTSFreeMemory(pAddress)

这是您问题的答案;

检测远程桌面连接的来源

它只是指示您可以查询连接并解析它们。