2017-01-15 9 views
0

У меня есть приложение UWP, которому необходимо получить доступ к внешней USB-камере, с возможностью знать, когда на камере нажата кнопка. Я могу использовать MediaCapture для поиска камеры и отображения видеопотока. Проблема в том, что у меня нет способа определить, была ли нажата кнопка на устройстве. Я попытался подключиться к нему с помощью Windows.Devices.Usb, но не был успешным, так как класс устройства 0e, которого нет в списке поддерживаемых кодов классов (https://msdn.microsoft.com/en-us/library/windows/hardware/dn312121(v=vs.85).aspx#step3). Когда я звоню UsbDevice.FromIdAsync(mydeviceId), я всегда получаю Null. На этом этапе я пытаюсь определить, какие мои параметры определяют нажатие кнопки.Кнопка UWP на внешней USB-камере

У меня есть следующие в моем пакете манифеста:

<DeviceCapability Name="usb"> 
    <Device Id="vidpid:19ab 1050"> 
     <Function Type="classId:0e * *" /> 
    </Device> 
</DeviceCapability> 
+0

Если вы хотите обнаружить кнопку на внешней USB-камере? Если это так, вы должны иметь возможность проверить OEM-устройства устройства камеры, которое поддерживает передачу сигнала кнопки на ПК. Также кажется, что большинство внешних USB-камер не имеют кнопки на нем. Так почему вы хотите его обнаружить? –

+0

Это для микроскопа USB-камеры, у которого есть кнопка, позволяющая пользователю захватывать изображение без взаимодействия с ПК. Проблема в том, что идентификатор класса устройства равен 0e. Также не похоже, что класс устройства изображений поддерживается пространством имен Windows.Devices.Usb –

+0

У меня точно такая же проблема. Но для того, чтобы не упрощать вещи, я нахожусь на Java. Вы нашли способ? Не случайно ли это микроскоп USB также: https://plugable.com/products/usb2-micro-250x? –

ответ

1

я решить мою проблему. Проблема заключалась в определении моей способности. У меня изменились значения страницы и использования. Ниже приведена обновленная способность, которая сработала.

<DeviceCapability Name="humaninterfacedevice"> 
     <Device Id="vidpid:19ab 1000"> 
     <Function Type="usage:FFA0 0001" /> 
     </Device> 
     <Device Id="vidpid:19ab 1020"> 
     <Function Type="usage:FFA0 0001" /> 
     </Device> 
</DeviceCapability>