c# 获取当前程序的Tcp连接
时间: 2024-02-20 16:56:56 浏览: 120
在C#中,可以使用System.Net.NetworkInformation.IPGlobalProperties类获取当前程序的TCP连接信息。以下是示例代码:
```csharp
using System.Net.NetworkInformation;
// 获取IP全局属性
IPGlobalProperties ipProperties = IPGlobalProperties.GetIPGlobalProperties();
// 获取TCP连接信息
TcpConnectionInformation[] connections = ipProperties.GetActiveTcpConnections();
foreach (TcpConnectionInformation connection in connections)
{
Console.WriteLine("本地地址: {0}:{1}", connection.LocalEndPoint.Address, connection.LocalEndPoint.Port);
Console.WriteLine("远程地址: {0}:{1}", connection.RemoteEndPoint.Address, connection.RemoteEndPoint.Port);
Console.WriteLine("状态: {0}", connection.State);
}
```
在上面的代码中,首先使用IPGlobalProperties.GetIPGlobalProperties()方法获取IP全局属性,然后使用IPGlobalProperties.GetActiveTcpConnections()方法获取当前程序的TCP连接信息。遍历所有的TCP连接,输出本地地址、远程地址和状态等信息。
注意:在使用IPGlobalProperties类获取TCP连接信息时,需要有足够的权限,否则可能会抛出SecurityException异常。
阅读全文