我目前正在尝试用USB Hub扫描所有USB端口(检查它是否为Root)以及它们连接到哪个控制器.
为了使其更加明显:
USB Port1 (nothing plugged in)   -> USB Hub1   |                 |-> Controller 1
USB Port2 (Keyboard plugged in)  ->            |-> USB Root Hub  |-> Controller 2
USB Port3 (nothing plugged in)   -> USB Hub2   |                 |
USB Port4 (nothing plugged in)   ->            |-> USB Root Hub  |-> Controller3 (Mainboard)
我想将用户所有端口和连接的集线器显示为树.如果USB端口及其控制器正在使用中.
我希望你们能理解我想要描述的内容.如果你能给我一些关键词甚至代码片段我会非常感激.
PS:抱歉我的英语不好.
到目前为止,这是代码(我正在使用.NetFramework 4.5.x):
USBPortScanner类:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Management;
using System.IO.Ports;
namespace USBPortScanner
{
    class USBPortScanner
    {
        static void Main(string[] …