我试图让进程的PID从服务器内部与本地http服务器建立本地连接。例如:Chrome-> HTTPREQ - >的HttpServer:8080。因此,从httpServer我可以知道哪个进程正在进行连接,在本例中为Chrome。
我可以使用带有TCP_TABLE_OWNER_MODULE_ALL的GetExtendedTcpTable查询所有tcp连接,然后检查每一行并使用row-> dwOwningPid
8080 == ntohs(row->dwRemotePort) &&
row->dwLocalAddr == inet_addr("127.0.0.1") &&
row->dwRemoteAddr == inet_addr("127.0.0.1")
问题似乎是因为我安装了一个拦截我流量的AV,我得到AV的PID而不是启动连接的原始应用程序。
chrome -> av wfp -> httpserver
如果不向AV添加排除项,有没有办法可以检索启动请求的原始进程的PID,而不是像AV网络过滤器这样的转发器?
提前致谢。
答案 0 :(得分:0)
回答我自己的问题:
Chrome - > AV - > WFP
如果AV(Xport) - > (Yport)WFP
一般:
Chrome(Xport -1) - > WFP。
这对我有用。