我試圖通過Windows.Devices.Usb API使用通用Windows應用程序僅用於PC(無電話)(WinRT)連接到設備(SecuGen Hamster Pro 20)。無法從DeviceInformation.Id創建UsbDevice
該設備是一個指紋掃描儀。
我已經做了所有在網上發現這樣做的步驟:
我看使用的所有設備:
var myDevices = await Windows.Devices.Enumeration.DeviceInformation.FindAllAsync();
這將返回約1400設備。使用一些filteration後:
var resultList = myDevices.Where(s => s.Name.ToLower().Contains("secu")).ToList<DeviceInformation>();
包含在我的機器3個設備(我已經嘗試過了其他機器上,發現10個結果一些)。
,因爲它返回0結果althought我敢肯定,我已經做了正確的我沒有使用過載查找設備DeviceInformation.FindAllAsync(String aqsFilter)
(用正確的VID & PID)
這裏的問題是,當我嘗試從任何使用3個結果創建UsbDevice
對象:
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>
我也試圖從任何從DeviceInformation.FindAllAsync()
返回的1400個設備創建一個UsbDevice
對象,但都返回null甚至有的扔,說the system cannot find the file specified 0x80070002
我使用配置的能力
我試圖閱讀DeviceAccessInformation
它返回的設備DeviceAccessStatus.Unspecified
任何人都可以讓我知道我在這裏錯過了什麼?