我需要知道系统中当前使用的是哪种 USB 设备。有一个关于 USB 设备类代码的 USB规范。但我无法获取设备类型,WMI 请求WQL: select * from Win32_UsbHub
在类代码、子类代码、协议类型字段上给出空值。任何想法如何检测当前使用的 USB 设备类型?
我当前的代码:
ManagementObjectCollection collection;
using (var searcher = new ManagementObjectSearcher(@"Select * From Win32_USBHub"))
{
collection = searcher.Get();
foreach (var device in collection)
{
var deviceId = (string)GetPropertyValue("DeviceID");
var pnpDeviceId = (string)GetPropertyValue("PNPDeviceID");
var descr = (string)device.GetPropertyValue("Description");
var classCode = device.GetPropertyValue("ClassCode"); //null here
}
}