как сделать только один USB-порт видимым для приложения - PullRequest
0 голосов
/ 01 февраля 2012

Я занимаюсь разработкой приложения на C #, которое должно подключаться к нескольким USB-устройствам, и я хочу, чтобы приложение могло видеть один USB-порт за раз, но не останавливать подключения или питание порта.у кого-нибудь есть идеи, что я могу использовать или сделать?

Ответы [ 2 ]

1 голос
/ 01 февраля 2012

USB следует топологии дерева. Каждое соединение в цепочке USB имеет связанный путь. Вы можете отфильтровать это, то есть скрыть все записи не по пути, который вы хотите сделать видимым. Итак:

  • перечисление подключенных USB-устройств
  • удалить все устройства, которые не указаны в выбранном вами пути из списка
  • показать список пользователю
0 голосов
/ 01 февраля 2012

Просто используйте SetupAPI, чтобы выбрать, с каким устройством вы хотите общаться, а затем откройте дескриптор для конкретного устройства.Как только вы откроете ручку, вы будете разговаривать только с одним USB-устройством.

http://msdn.microsoft.com/en-us/library/windows/hardware/ff549791(v=vs.85).aspx

SetupAPI довольно сложен, но вы можете найти пример кода C # онлайн от Яна Аксельсона:

http://www.lvr.com/winusb.htm

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...