源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

c#检测端口是否被占用的简单实例

  • 时间:2022-07-22 05:18 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:c#检测端口是否被占用的简单实例
当我们要创建一个Tcp/Ip Server connection ,我们需要一个范围在1000到65535之间的端口 。 但是本机一个端口只能一个程序监听,所以我们进行本地监听的时候需要检测端口是否被占用。 命名空间System.Net.NetworkInformation下定义了一个名为IPGlobalProperties的类,我们使用这个类可以获取所有的监听连接,然后判断端口是否被占用,代码如下:
[u]复制代码[/u] 代码如下:
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端口启动一个监听,然后测试是否可以被检测出来,代码如下:
[u]复制代码[/u] 代码如下:
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(); }
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部