1

我这里有这段代码

For i As Integer = 0 to My.Computer.Ports.SerialNames.Count - 1
      ComboBox1.Items.Add(My.Computer.Ports.SerialPortNames(i))
Next

示例输出:

COM1
COM2
COM3

这将返回 ComboBox 中使用的 COM 端口列表

现在我想做的是这样的

COM1 <USB Mouse>
COM2 <USB Keyboard>

等等

我想使用 COM 端口获取任何东西。

希望有人能帮忙,谢谢!

4

1 回答 1

2

在这里,我找到了解决您问题的链接:Msdn forum

它使用 Windows Management Instrumentation 从端口检索您想要的数据。这样,您将检索端口的全名,包括您想要的部分。

这是代码:

' Add reference to System.Management.dll.
Try
    Dim searcher As New ManagementObjectSearcher( _
   "root\cimv2", _
   "SELECT * FROM Win32_SerialPort")

    For Each queryObj As ManagementObject In searcher.Get()
        MsgBox(queryObj("Name"))
    Next

Catch err As ManagementException
    MessageBox.Show("An error occurred while querying for WMI data: " & err.Message)
End Try
于 2013-06-18T14:03:53.823 回答