咖啡真苦,蜜糖好甜
认认真真做事,踏踏实实写代码。。。

导航

 

1,直接调用SerialPort类中的GetPortNames()方法.

      string[] portList = System.IO.Ports.SerialPort.GetPortNames();     

     // Com Port
     StringBuilder sb = new StringBuilder();

     if (portList.Length > 1)
    {
           for (int i = 0; i < portList.Length; ++i)
        {
              string strComPortName = portList[i];
              if (strComPortName.Equals("COM1"))
              {
                    i++;
              }
                 sb.Append(portList[i]);
                 sb.Append(" ");
          }
     }
        else
      {
         sb.Append("null");
       }

 

 2,调用Win32_SerialPort。(port["name"])

  

  var instances = new ManagementClass("Win32_SerialPort").GetInstances();
  foreach (ManagementObject port in instances)
  {
    // Console.WriteLine("{0}: {1}:{2}", port["deviceid"], port["name"], port["PowerManagementCapabilities"]);
  }

 

两种都差不多,不过个人感觉用第二种在系统运行的过程中,会慢一点,不知道有谁知道为神马?

posted on 2014-03-06 15:35  咖啡真苦,蜜糖好甜  阅读(458)  评论(0编辑  收藏  举报