获取当前系统可用串口号(转,亲测有效)

Posted 朱小勇

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了获取当前系统可用串口号(转,亲测有效)相关的知识,希望对你有一定的参考价值。

void GetComList_256(CComboBox* pComnum)
{
  CString strCom, strComOpen;
  int nCom = 0;
  int count = 0;
  HANDLE hCom;
  pComnum->ResetContent();//组合框清空
   do
   {
   nCom++;
     strCom.Format(_T("COM%d"), nCom);
     strComOpen.Format(_T("\\\\.\\COM%d"), nCom);
  hCom = CreateFile(strComOpen, GENERIC_READ | GENERIC_WRITE, 0, NULL,OPEN_EXISTING, FILE_FLAG_OVERLAPPED, 0);//如果返回不为空则此串口可用
     if (INVALID_HANDLE_VALUE == hCom)
    {
    DWORD error = ::GetLastError();//取得错误信息
    }
     else
    {
    pComnum->AddString(strCom);
    count++;
    }
     CloseHandle(hCom);
  } while (nCom < 256);
 pComnum->SetCurSel(0);
}

以上是关于获取当前系统可用串口号(转,亲测有效)的主要内容,如果未能解决你的问题,请参考以下文章