c# - 在 C# 中发现串行端口

标签 c# .net usb registry serial-port

我正在编写一个通过向 USB 端口发送字节进行通信的应用程序。我希望允许用户选择端口,为此,我使用 SerialPort.GetPortNames()。不幸的是,它返回一个空数组。该方法据称会读取注册表中的数据(HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\SERIALCOMM),但 SERIALCOMM 目录丢失。当我在 Linux 上运行该程序时,它会按预期列出我的四个 USB 端口。如何以不同的方式修复注册表/发现端口?

最佳答案

您可以使用管理对象来查询可用的 COM 端口。有趣的表格是:

您可以在 WMI Code Creator 中探索这些命名空间,并生成VBScript/VB/C#代码。

关于c# - 在 C# 中发现串行端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8624041/

相关文章:

c# - CSPR 的子字符串也是 CSPR 吗?

C#:动态用户控制回发返回 true,即使 UC 是第一次加载

c# - 使用接口(interface)属性实现的接口(interface)

function - QEMU 中的 USB 功能 Controller 仿真

C# 相当于 VB6 字符占位符

DD/MM/YY 的 JavaScript 验证

c# - 在 C# : performance and elegance 中引发事件

android - 三星 Galaxy S2 Android 上的 USB 附件 API

c# - 如何从 ASP.NET 应用程序连接到服务器端 USB (HID) 设备?

c# - 返回一个已经从 WCF 格式化为 JSON 的字符串