打開注冊表
成都創(chuàng)新互聯(lián)主營長清網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,重慶APP開發(fā)公司,長清h5小程序開發(fā)搭建,長清網(wǎng)站營銷推廣歡迎長清等地區(qū)企業(yè)咨詢菜單-》運(yùn)行
輸入regedit
到目錄
HKEY_LOCAL_MACHINE\\HARDWARE\\DEVICEMAP\\SERIALCOMM\\
中,該目錄下有的com口表示系統(tǒng)當(dāng)前存在的com
//獲取系統(tǒng)串口注冊表中index索引位置的鍵名或鍵值 //QString為value字符串時(shí)為獲取鍵值,鍵值即com名 QString getcomm(int index, QString keyorvalue) { QString commresult = ""; QString strkey = "HARDWARE\\DEVICEMAP\\SERIALCOMM";//子鍵路徑 int a = strkey.toWCharArray(subkey); subkey[a] = L'\0'; if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, subkey, 0, KEY_READ|KEY_QUERY_VALUE, &hKey) != 0 ) { QMessageBox::question(NULL, QString("錯誤"), QString("注冊表打開失敗\r\n請檢查注冊表路徑是否正確!")); } QString keymessage = "";//鍵名 QString message = ""; QString valuemessage = "";//鍵值 indexnum = index;//要讀取鍵值的索引號 keysize = sizeof(keyname); valuesize = sizeof(keyvalue); if ( ::RegEnumValue(hKey, indexnum, keyname, &keysize, 0, &type, (BYTE*)keyvalue, &valuesize) == 0 ) { //讀取鍵名 //for (int i = 0; iallKeys(); //系統(tǒng)注冊表中com存在的個數(shù) int comkeycount = key.size(); //qDebug() << comkeycount << key; //2 ("/Device/Serial0", "/Device/VCP0") regcomlist.clear(); comboxcomlist.clear(); for ( int i = 0; i < comkeycount; i++ ) { //將注冊表中有的com名字放入列表中 //qDebug() << getcomm(i, "key"); regcomlist << getcomm(i, "value"); //qDebug() << regcomlist.value(i); } qDebug() << regcomlist; qDebug() << create_user_virtual_comlist; qDebug() << create_private_virtual_comlist; //兩種情況,第一種,系統(tǒng)注冊表此時(shí)有虛擬串口的信息,那么要將保存系統(tǒng)注冊表中串口信息的regcomlist列表中刪除掉虛擬串口,create_user_virtual_comlist,create_private_virtual_comlist已經(jīng)保存了上次的虛擬串口列表 //for ( int i = 0; create_user_virtual_comlist; ) //第二種,系統(tǒng)注冊表此時(shí)沒有虛擬串口信息,只有本機(jī)串口信息,那么就不需要刪除 bool findflag = false; for ( int i = 0; i < MOST_VIRTUAL_COM_NUM; i++ )//combox組件中添加255個com { findflag = false; //遍歷保存注冊表中com的列表 for ( int j = 0 ; j < comkeycount; j++ ) { if ( QString::compare(regcomlist.value(j), QString("COM%1").arg(i + 1)) == 0 ) { comboxcomlist << QString(regcomlist.value(j) + QString(" (本機(jī))")); findflag = true; break; } } if ( findflag == true ) continue; comboxcomlist << QString("COM%1").arg(i + 1); }
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。