c# 判斷端口是否被占用


這里主要用到:命名空間System.Net.NetworkInformation下定義了一個名為IPGlobalProperties的類

具體代碼

 1     class PortHelper
 2     {
 3 
 4         #region 指定類型的端口是否已經被使用了
 5         /// <summary>
 6         /// 指定類型的端口是否已經被使用了
 7         /// </summary>
 8         /// <param name="port">端口號</param>
 9         /// <param name="type">端口類型</param>
10         /// <returns></returns>
11         public bool portInUse(int port,PortType type)
12         {
13             bool flag = false;
14             IPGlobalProperties properties = IPGlobalProperties.GetIPGlobalProperties();
15             IPEndPoint[] ipendpoints = null;
16             if (type == PortType.TCP)
17             {
18                 ipendpoints = properties.GetActiveTcpListeners();
19             }
20             else
21             {
22                 ipendpoints = properties.GetActiveUdpListeners();
23             }
24             foreach (IPEndPoint ipendpoint in ipendpoints)
25             {
26                 if (ipendpoint.Port == port)
27                 {
28                     flag = true;
29                     break;
30                 }
31             }
32             ipendpoints = null;
33             properties = null;
34             return flag;
35         }
36         #endregion
37 
38     }
39 
40     #region 端口枚舉類型
41     /// <summary>
42     /// 端口類型
43     /// </summary>
44     enum PortType
45     {
46         /// <summary>
47         /// TCP類型
48         /// </summary>
49         TCP,
50         /// <summary>
51         /// UDP類型
52         /// </summary>
53         UDP
54     }
55     #endregion

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM