Winapi 存在哪些通信端口?Win32

Winapi 存在哪些通信端口?Win32,winapi,serial-port,Winapi,Serial Port,在win32上,使用winapi,是否可以知道哪些组件(从com0以上)实际上作为设备存在 目前,我只是尝试将它们全部打开(0到9),但我无法找出一个不存在的错误与一个因为其他人正在使用而无法使用的错误之间的区别。这两种情况似乎都返回了相同的最后一个错误,因此我想知道是否可以列出系统上可用的所有组件。我相信您可以调用并传递第一个参数的null,然后解析结果。在谷歌搜索“enumerate com ports”。是一个示例链接。名称很不幸,但“SetupAPI”是Windows API的相关部分。

在win32上,使用winapi,是否可以知道哪些组件(从com0以上)实际上作为设备存在


目前,我只是尝试将它们全部打开(0到9),但我无法找出一个不存在的错误与一个因为其他人正在使用而无法使用的错误之间的区别。这两种情况似乎都返回了相同的最后一个错误,因此我想知道是否可以列出系统上可用的所有组件。

我相信您可以调用并传递第一个参数的null,然后解析结果。

在谷歌搜索“enumerate com ports”。是一个示例链接。

名称很不幸,但“SetupAPI”是Windows API的相关部分。为设备接口类调用一次
GUID\u deviceinterface\u COMPORT
。然后重复调用,从索引0开始,直到
GetLastError()==ERROR\u NO\u MORE\u ITEMS

请注意,可能不止10个COM端口。例如,我的蓝牙设备通常具有COM20以上的端口。