展会信息港展会大全

c#检测端口是否被占用的简单实例
来源:互联网   发布日期:2016-01-19 12:58:44   浏览:1838次  

导读:这篇文章主要介绍了c 检测端口是否被占用的简单实例,有需要的朋友可以参考一下当我们要创建一个Tcp Ip Server connection ,我们需要一个范围在1000到65535之间的端口 。但是本机一个端口只能一个程序监听, ...

这篇文章主要介绍了c#检测端口是否被占用的简单实例,有需要的朋友可以参考一下

当我们要创建一个Tcp/Ip Server connection ,我们需要一个范围在1000到65535之间的端口 。

但是本机一个端口只能一个程序监听,所以我们进行本地监听的时候需要检测端口是否被占用。

命名空间System.Net.NetworkInformation下定义了一个名为IPGlobalProperties的类,我们使用这个类可以获取所有的监听连接,然后判断端口是否被占用,代码如下:

代码如下:

public static bool PortInUse(int port)

{

bool inUse = false;

IPGlobalProperties ipProperties = IPGlobalProperties.GetIPGlobalProperties();

IPEndPoint[] ipEndPoints = ipProperties.GetActiveTcpListeners();

foreach (IPEndPoint endPoint in ipEndPoints)

{

if (endPoint.Port == port)

{

inUse = true;

break;

}

}

return inUse;

}

我们使用HttpListner类在8080端口启动一个监听,然后测试是否可以被检测出来,代码如下:

代码如下:

static void Main(string[] args)

{

HttpListener httpListner = new HttpListener();

httpListner.Prefixes.Add("http://*:8080/");

httpListner.Start();

Console.WriteLine("Port: 8080 status: " + (PortInUse(8080) ? "in use" : "not in use"));

Console.ReadKey();

httpListner.Close();

}

赞助本站

人工智能实验室

相关热词: 检测端口 c

AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港