首页
/
每日頭條
/
科技
/
c語言如何查看串口号
c語言如何查看串口号
更新时间:2026-01-16 19:44:46

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

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
推荐阅读
華為windows10系統以後能用嗎
華為windows10系統以後能用嗎
最佳應用隻分享好玩有趣的黑科技應用用過M1芯片的Mac用戶應該都知道,現在直接Mac也能使用iPhone的應用了,但是支持的應用不是很多,兼容效果也不是很友好,有點雞肋。而華為的移動應用引擎已經發布有2個多月了,據說新發布的Matebook...
2026-01-16
諾基亞xr20參數重量
諾基亞xr20參數重量
今天,NokiaXR20正式發布,最大的特點就是經久耐用。該機秉承了諾基亞(Nokia)品牌的諸多優秀特性,提供了堅固耐用的外殼,通過了MIL-STD810H認證,可承受1.8米的跌落。該機還獲得了IP68防水防塵認證,正面配備了康甯的Go...
2026-01-16
舊手機做看家攝像頭的缺點
舊手機做看家攝像頭的缺點
安防市場是個剛需市場,國外雲端攝像頭Dropcam風聲水起,國内安防攝像頭也如雨後春筍破土而出,單說大公司,百度有i耳目,聯想出看家寶,360推家庭衛士。不過,要想享受智能安防生活,花錢那是少不了的。最近就發現了一款挺有意思的移動應用産品,...
2026-01-16
處理器型号怎麼看性能
處理器型号怎麼看性能
2015-02-0605:39:00作者:付磊臨近春節,不少企業公司都會給員工發放年終獎,這對于年末預算充足想要升級電腦配置的DIY用戶來說是個不錯的消息。但升級配置不是無腦堆錢買高配,不然就要被扣上敗家的帽子了,如何用最少的錢買到最合适的...
2026-01-16
為什麼古代的火折子一吹就能打
為什麼古代的火折子一吹就能打
文/玉濁清我們所生活的這個時代科技很發達,到處都有高科技産品,而在我們在日常生活中也離不開這些東西,也享受着高科技給我們帶來的方便和快樂!與此同時有不少善于思考的人,也不會忘記古人的天才大腦,古人的智慧也是不可小觑的,其實古時候也有一些高科...
2026-01-16
Copyright 2023-2026 - www.tftnews.com All Rights Reserved