C# 判断本机端口有没有被占用

直接上代码

复制代码
public static bool IsPortInUse(int port)
    {
        bool isPortInUse = false;
        IPGlobalProperties ipGlobalProperties = IPGlobalProperties.GetIPGlobalProperties();
        IPEndPoint[] tcpConnInfoArray = ipGlobalProperties.GetActiveTcpListeners();
        IPEndPoint[] udpConnInfoArray = ipGlobalProperties.GetActiveUdpListeners();

        foreach (IPEndPoint endPoint in tcpConnInfoArray)
        {
            if (endPoint.Port == port)
            {
                isPortInUse = true;
                break;
            }
        }

        if (!isPortInUse)
        {
            foreach (IPEndPoint endPoint in udpConnInfoArray)
            {
                if (endPoint.Port == port)
                {
                    isPortInUse = true;
                    break;
                }
            }
        }

        return isPortInUse;
    }
复制代码

调用方式:

复制代码
 1 int port = 80; // 要检查的端口号
 2         bool isPortInUse = PortChecker.IsPortInUse(port);
 3         if (isPortInUse)
 4         {
 5             Console.WriteLine($"端口 {port} 被占用.");
 6         }
 7         else
 8         {
 9             Console.WriteLine($"端口 {port} 未被占用.");
10         }
复制代码

 

posted @   Yanaha  阅读(359)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示