Windows 8.1 Store App HidDevice.FromIdAsync returns null

本文关键字:FromIdAsync returns null HidDevice App Store Windows | 更新日期: 2023-09-27 18:08:06

类似:http://social.msdn.microsoft.com/Forums/windowsdesktop/en-US/2cb65387-aad8-444d-a462-c44f3111a877/action?threadDisplayName=win81-hid-device-returning-null

我正在尝试访问用于OCR和磁条读取的HID设备,桌面迷你MPR。它的venpid是0x0744 0x001D,它有三个接口,[使用页面使用id] 0x0001 0x0002, 0x0001 0x0006和0xFFA0 0x0001。

与链接的问题一样,FindAllAsync返回DeviceInformation, HidDevice。FromIdAsync返回null, DeviceAccessInformation。CurrentStatus抛出ElementNotFound。我理解使用页面0x0001被阻止,但我希望0xFFA0能够访问。

对于设备功能,我已经尝试过:

<m2:DeviceCapability Name="humaninterfacedevice">
  <!--Desko Device-->
  <m2:Device Id="vidpid:0744 001D usb">
    <m2:Function Type="usage:0001 *"/>
  </m2:Device>
</m2:DeviceCapability>

<m2:DeviceCapability Name="humaninterfacedevice">
  !--Desko Device-->
  <m2:Device Id="vidpid:0744 001D usb">
    <m2:Function Type="usage:FFA0 0001"/>
  /m2:Device>
</m2:DeviceCapability>

<m2:DeviceCapability Name="humaninterfacedevice">
  <!--Desko Device-->
  <m2:Device Id="vidpid:0744 001D usb">
    <m2:Function Type="usage:FFA0 *"/>
  </m2:Device>
</m2:DeviceCapability>

none产生期望的结果。

我怎样才能访问这个设备?定制UMDF呢?代理组件?买一个新设备——我怎么提前知道它是否兼容?

Windows 8.1 Store App HidDevice.FromIdAsync returns null

用尽了所有其他方法,在尝试疯狂的UMDF或代理组件之前,我再次阅读了这篇调试文章:为USB设备编写应用程序

这次我仔细注意了驾驶员部分。当查看我设备上安装的驱动程序时,我注意到安装了卡巴斯基的驱动程序。因此,为了测试,我卸载了卡巴斯基,重新启动,然后在设备管理器和注册表(HKLM'System'CurrentControlSet'Control' devicecclasses)中删除了设备的所有条目。

然后我插入设备,运行我的测试程序,FromIdAsync使用预期的usagePage FFA0和使用率0001工作。