首页
/
每日頭條
/
科技
/
c語言如何查看串口号
c語言如何查看串口号
更新时间:2026-02-22 18:02:12

在工作中如果使用到串口,我們在打開的時候,都要做如下操作:

1、右鍵“我的電腦”打開右鍵菜單;

2、然後選擇并點擊“管理”;

3、在彈出的計算機管理器中選擇“設備管理器”;(有的右鍵菜單直接有設備管理器)

4、在右側選擇“端口”,展開看串口信息;

5、在軟件中輸入串口名,然後打開。

有沒有什麼辦法省去這樣的操作呢,直接在軟件打開的時候(或者通過按鈕刷新信息)獲取到已有的串口列表信息?

注冊表

在windows操作系統中,有很多設備和應用以及其他的很多東西都在它的注冊表中。

隻要我們讀取注冊表中相應的位置,就可以獲取對應信息。

當然串口信息也不例外,它在注冊表中的路徑是:

HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\SERIALCOMM 。

大家可以在執行 regedit 打開注冊表編輯器,打開對應位置查看串口信息(前提是有串口設備)。

我的電腦上信息如下圖:

c語言如何查看串口号(CC編程筆記)1

對于如何讀取注冊表,windows 提供的豐富API中就有一系列與注冊表相關的接口。

今天我們需要用到的是如下幾個接口:

RegOpenKeyEx 用于打開所要的鍵,并返回一個句柄;

RegEnumValue 用于枚舉所在項的鍵值;

RegCloseKey 用于關閉當前打開的鍵。

使用方法

具體調用流程如下:

#include <iostream> #include <winreg.h> // 注冊表函數所在頭文件 using namespace std; // 該函數返回讀取到的串口名稱列表 std::list<std::string> getComList() { std::list<std::string> listComs; HKEY hKey; // 打開注冊表 if(::RegOpenKeyEx(HKEY_LOCAL_MACHINE, TEXT("HARDWARE\\DEVICEMAP\\SERIALCOMM"), 0,KEY_READ,&hKey)!=0) return listComs; char key[256]; //鍵名數組 char value[256]; //鍵值數組 DWORD type; DWORD keySize; DWORD valueSize; DWORD idx = 0; while (true) { keySize = sizeof(key); valueSize = sizeof(value); //枚舉鍵值 int ret = ::RegEnumValueA(hKey,idx ,key,&keySize,0, &type,(BYTE*)value,&valueSize); if(ret == ERROR_SUCCESS || ret == ERROR_MORE_DATA) //列舉鍵名和值 { listComs.push_back(value); // 保存獲取到的值 std::cout << value << std::endl; } else break; } ::RegCloseKey(hKey);//關閉注冊表 return listComs; }

總結

還有其他不少關于注冊表操作的函數,

有興趣的小夥伴可以自行查看和搜索相關函數功能和用法。

在這就不做展開了。

如果覺得我寫的還不錯的話,求贊,求關注哦!(^▽^)

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
使用手機發短信的技巧
使用手機發短信的技巧
發手機短信現在已經是稀松平常的事了,可是記得在2003年的時候,功能手機(老年機)發短信也是很好玩兒的事情,很多年輕人那時還熱衷于玩兒短信,而且玩兒的很溜。到了現在,短信已經基本上被束之高閣了,尤其是有了智能手機,有了微信以後。但是用智能手...
2026-02-22
所有的明星代言的手機
所有的明星代言的手機
互聯網時代,手機廠商尋找品牌代言人已經不是什麼新鮮事了。知名的品牌代言人可以提升産品知名度,所以流量明星成為了各大廠商的"香饽饽",他們可以大幅提升産品熱度和銷量。但也有不少廠商鐘愛體育明星,超越自我、永不低頭的體育精神更能代表自身品牌的追...
2026-02-22
vivo手機如何快速投屏電腦
vivo手機如何快速投屏電腦
有些視頻平台比較坑人,一個會員僅對一台或者一種設備生效,比如手機上購買了某視頻APP的會員,在電視上登錄的話是不生效的,需要另外購買會員。所以,一般我們都會将視頻投屏到電視上播放,當然,這都不稀奇了,已經是大家好幾年前會幹的事了。電視上的投...
2026-02-22
怎樣把企業微信變成騰訊會議
怎樣把企業微信變成騰訊會議
騰訊會議和企業微信是一個軟件嗎騰訊會議和企業微信并不是同一個軟件,它們都有自己的APP。騰訊會議專注于開會,讓開會這件事變得更簡潔方便,而企業微信是一個辦公軟件、客戶管理軟件,我們可以用它來開會、考勤、聯系客戶。本次合作,是希望通過騰訊會議...
2026-02-22
電腦截圖怎麼發送出去
電腦截圖怎麼發送出去
電腦截圖怎麼發送出去?首先看看電腦上是否安裝了QQ聊天軟件,從安全角度考慮,最好安裝最新的版本,下面我們就來聊聊關于電腦截圖怎麼發送出去?接下來我們就一起去了解一下吧!電腦截圖怎麼發送出去首先看看電腦上是否安裝了QQ聊天軟件,從安全角度考慮...
2026-02-22
Copyright 2023-2026 - www.tftnews.com All Rights Reserved