博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
检测端口是否被占用
阅读量:6036 次
发布时间:2019-06-20

本文共 951 字,大约阅读时间需要 3 分钟。

        当我们要创建一个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();}

 

 

 

 

 

 

 

 

           

转载地址:http://rblhx.baihongyu.com/

你可能感兴趣的文章
VBoot1.0发布,Vue & SpringBoot 综合开发入门
查看>>
centos7 安装wps 后 演示无法启动
查看>>
git简单命令
查看>>
LAMP编译部署
查看>>
XenDesktop7.6安装部署入门教程
查看>>
HashMap的工作原理及HashMap和Hashtable的区别
查看>>
GregorianCalendar日历程序
查看>>
Sublime 中运行 Shell 、Python、Lua、Groovy...等各种脚本
查看>>
【Java集合源码剖析】ArrayList源码剖析
查看>>
linux的目录结构
查看>>
这次逻辑通了,
查看>>
HTMLHelper
查看>>
快速构建Windows 8风格应用29-捕获图片与视频
查看>>
java程序:set改造成map
查看>>
C++ 排序函数 sort(),qsort()的使用方法
查看>>
OC语言Block和协议
查看>>
使用xpath时出现noDefClass的错误(找不到某个类)
查看>>
OutputCache祥解
查看>>
【推荐】最新国外免费空间网站Hostinger
查看>>
.Net规则引擎介绍 - REngine
查看>>