Нахождение последовательных портов USB из приложения.NET в соответствии с Windows 7

У меня есть приложение, которое ищет определенный последовательный порт FTDI со специализированными дескрипторами USB. Мой текущий код использует пример из Проекта Кода, который ищет MSSerial_PortName Таблица WMI под root\WMI, и вытаскивает дополнительную информацию о USB из root\CIMV2\WIN32_PnPEntity.

Это работало хорошо под XP, но приложение должно также работать при типичном пользователе onWindows 7. В этом доступе среды root\WMI результаты в "Доступе запрещен" ManagementException.

Кто-либо может предложить путь к перекрестной ссылке имя устройства DOS последовательного порта к информации о USB при выполнении как типичный пользователь? До сих пор я посмотрел на root\CIMV2\WIN32_SerialPort* таблицы, но они только содержат порты материнской платы. Я также рассмотрел использование SetupAPI, но я не нашел полный и рабочий шаблон PInvoke для этого.

5
задан Adrian Cox 17 February 2010 в 09:55
поделиться