Невозможно создать UsbDevice из DeviceInformation.Id

Я пытаюсь подключиться к устройству (SecuGen Hamster Pro 20) через Windows.Devices.Usb API, используя универсальное приложение Windows только для ПК (без телефонов) (WinRT).

Устройство представляет собой сканер отпечатков пальцев.

Я сделал все шаги, найденные в Интернете, чтобы сделать это:

Я искал все устройства, используя:

var myDevices = await Windows.Devices.Enumeration.DeviceInformation.FindAllAsync();

Это возвращает около 1400 устройств. После некоторой фильтрации, используя:

 var resultList = myDevices.Where(s => s.Name.ToLower().Contains("secu")).ToList<DeviceInformation>();

resultList содержит 3 устройства в моей машине (я пробовал на другой машине и нашел 10 результатов на некоторых).

Я не использовал перегрузку для поиска устройствDeviceInformation.FindAllAsync(String aqsFilter) потому что он возвращает 0 результатов, хотя я уверен, что все сделал правильно (использовал правильный VID & PID)

Проблема здесь в том, когда я пытаюсь создатьUsbDevice объект из любого из 3 результатов, используя:

UsbDevice device = await UsbDevice.FromIdAsync(resultList[0].Id);

Возвращаемое значение равно нулю, я все их перепробовал (resultList[0] , resultList[1] , resultList[2]) без удачи.

Я настроил возможности, используя:

 <DeviceCapability Name="usb">
      <Device Id="vidpid:1162 2200">
        <Function Type="name:vendorSpecific"/>
      </Device>
    </DeviceCapability> 

Я также пытался создатьUsbDevice объект из любого из 1400 устройств, возвращенных изDeviceInformation.FindAllAsync() но все вернуло ноль и даже некоторые выдают исключение, которое говоритthe system cannot find the file specified 0x80070002

Я пытался читатьDeviceAccessInformation для устройства это вернулоDeviceAccessStatus.Unspecified

Кто-нибудь может привести меня к тому, что мне здесь не хватает?

Ответы на вопрос(2)

Ваш ответ на вопрос