这里主要用到:命名空间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

 

 posted on 2015-07-07 11:43  Just_Do  阅读(6085)  评论(0编辑  收藏  举报