C# 查找进行 UDP/TCP 调用的客户端的进程 ID (pid)

C# find process id (pid) of client making an UDP/TCP call

我有一个服务器在 UDP 上侦听连接,另一个在 TCP 上侦听连接。 我需要知道是什么进程启动了连接。那可能吗? 我找到了多种解决方案,但都意味着检查每个端口的每个进程,在我看来这存在性能问题。另外,当我尝试这个时,我只得到我的服务器应用程序的 PID,而不是客户端。

谢谢

你可以试试这个

netstat -a -n -o | find "1688"

您将获得该过程的准确输出

 UDP    10.4.112.77:55866      *:*                                    1688
 UDP    127.0.0.1:1900         *:*                                    1688
 UDP    127.0.0.1:55868        *:*                                    1688

试试这个以获得完整的进程 ID 端口和进程名称。

  1. 打开命令提示符 window(以管理员身份)从 "Start\Search box" 输入 "cmd" 然后右键单击 "cmd.exe" 和 select "Run as Administrator"
  2. 输入:netstat -abno
  3. 在 "Local Address"
  4. 下找到您正在监听的端口
  5. 直接看那个进程名

您可以收集信息然后解析输出

这一堆 link 可能对您有所帮助。 Which PID listens on a given port in c#