C# Windows进程及其Ip地址';连接到

C# Windows进程及其Ip地址';连接到,c#,.net,windows,network-programming,C#,.net,Windows,Network Programming,我正在尝试获取进程在c#中连接到的IP地址。有没有简单的方法可以做到这一点?有两种方法可以做到这一点: 使用从iphlapi.dll导出的未记录的internalgetcptablewithownermodule/InternalGetUdpTableWithOwnerModule/internalgetcp6tablewithownermoduleInternalGetUdp6TableWithOwnerModuleAPI 运行netstat-b并解析输出 无论哪种方式,您都需要管理员权限,并

我正在尝试获取进程在c#中连接到的IP地址。有没有简单的方法可以做到这一点?

有两种方法可以做到这一点:

  • 使用从iphlapi.dll导出的未记录的
    internalgetcptablewithownermodule
    /
    InternalGetUdpTableWithOwnerModule
    /
    internalgetcp6tablewithownermodule
    InternalGetUdp6TableWithOwnerModuleAPI
  • 运行
    netstat-b
    并解析输出
  • 无论哪种方式,您都需要管理员权限,并且这两种方式都会因不同的Windows版本而中断。使用文档化的API创建Windows驱动程序是完全可能的,但这需要大量的工作

    更新:


    实际上,也有一个文档化的API——而且。此外,还有一个示例演示了如何从C#调用它。

    有两种方法可以实现这一点:

  • 使用从iphlapi.dll导出的未记录的
    internalgetcptablewithownermodule
    /
    InternalGetUdpTableWithOwnerModule
    /
    internalgetcp6tablewithownermodule
    InternalGetUdp6TableWithOwnerModuleAPI
  • 运行
    netstat-b
    并解析输出
  • 无论哪种方式,您都需要管理员权限,并且这两种方式都会因不同的Windows版本而中断。使用文档化的API创建Windows驱动程序是完全可能的,但这需要大量的工作

    更新:


    实际上,也有一个文档化的API——而且。另外还有一个例子,它展示了如何从C#调用它。

    我不确定您要的是什么。进程未连接,套接字未连接,这些套接字由进程创建。你能说得更具体些吗?你是在寻找像netstat这样的带有-b参数的工具吗?我不知道你想要什么。进程未连接,套接字未连接,这些套接字由进程创建。你能说得更具体些吗?你在寻找像netstat工具一样的带有-b参数的东西吗?这很好用,尽管这个过程是任务召唤4,即使我在服务器上玩游戏,它也不会出现在列表中,这有点让人困惑。接下来,它甚至没有出现在netstat-bDo中,你知道任务调用在网络连接中使用哪种协议吗?netstat-a-b显示了吗?它返回UDP:0.0.0.0:49404,但初始地址是78.111.229.123:32000,我相信是tcp,但我从来没有看到过那个地址。只是使用了一个数据包嗅探器,它将返回到78.111.229.123:32000 UDP这很好,尽管这个过程是职责召唤4,甚至当我在服务器上玩游戏时,它也不会出现在列表中,这有点让人困惑。接下来,它甚至不会出现在netstat-bDo中。你知道任务召唤使用哪种协议进行网络连接吗?netstat-a-b显示了吗?它返回UDP:0.0.0.0:49404,但初始地址是78.111.229.123:32000,我相信是tcp,但我从来没有看到过那个地址。只是使用了数据包嗅探器,它将返回到78.111.229.123:32000 UDP