如何跟踪任何程序尝试使用的网络端口?

时间:2011-06-10 15:35:23

标签: c++ windows winapi networking network-programming

我想看看任何程序正在做什么样的连接,哪个端口和看到程序的exe路径等。

我正在尝试实现某种防火墙通知系统,它会弹出一个窗口告诉我这个和那个端口需要打开才能使程序正常工作。

我如何开始这个?

3 个答案:

答案 0 :(得分:1)

结帐Windows Filtering Platform (WFP) API。不确定如何将网络活动与应用程序相关联,但这是您拦截它的正确位置。

答案 1 :(得分:1)

netstat / o为您提供每个网络连接的进程ID,netstat / b为您提供可执行文件名。

答案 2 :(得分:1)

您需要为您愿意提供此功能的每个进程挂钩套接字API,或使用WFP和客户端应用程序编写过滤器,该应用程序从您的过滤器接收信息并显示通知窗口。