我搜索过这个,我开始了解 WinPCap,但我仍然没有得到我需要的答案。 WinPCap 可以监控数据包,并且似乎不跟踪进程(我对此了解不多)。
我希望我的应用程序监听来自特定进程(通常来 self 稍后定义的浏览器)的每个 HTTP 请求,并在必要时修改它们。
我的应用程序最初是用 Delphi 编写的,但使用 C++ 的任何帮助也很棒。 谁能帮我解决这个问题?
编辑 1:当然我不指望你一定要根据 winPcap 给我一个答案!
最佳答案
WinPCap 允许您访问每个捕获数据包的源和目标 IP/端口对。您可以迭代操作系统的 TCP 表(在 Windows 上,您可以使用 GetTcpTable2()
和 GetTcp6Table2()
)来查找这些对,当您找到匹配项时,您将知道拥有该连接的进程 ID。从该 ID 中,您可以从操作系统中提取有关该进程的更多信息(文件名等)。
关于c++ - 如何捕获来自某些进程的所有 HTTP 请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18153310/