Я попытался выполнить запрос CIM_USBDevice, который находит устройства, но, насколько я могу судить, не имеет значение типа устройства. Насколько я могу судить, большинство других людей использовали диспетчер устройств для однократного обнаружения или находили другую часть полезной нагрузки, чтобы диктовать свои изменения.
Код: Выделить всё
public void findDevices()
{
string wmiQuery = "SELECT * FROM CIM_USBDevice";
ManagementObjectSearcher searcher = new ManagementObjectSearcher(wmiQuery);
List deviceObjects = new();
foreach (ManagementObject device in deviceList.Get())
{
// Access properties of the USB device like DeviceID, PNPDeviceID, etc.
string devID = device["Description"]?.ToString() ?? "Description field not included";
string avail = device["Availability"]?.ToString() ?? "Availability field not included";
string cmancode = device["ConfigManagerErrorCode"]?.ToString() ?? "ConfigError not included";
string PNPDeviceID = device["PNPDeviceID"]?.ToString() ?? "PNPDeviceID not included";
string Name = device["Name"]?.ToString() ?? "Name not included";
string deviceID = device["DeviceID"]?.ToString() ?? "devID field not included";
}`
USB\VID_4321&PID_1234\FTXYZABC
Составное USB-устройство
USB\VID_4321&PID_1234\FTXYZABC
Описание: USB Serial Converter E
Наличие поле не включено
Подробнее здесь: https://stackoverflow.com/questions/790 ... type-for-t