【问题标题】:Reading USB Descriptors in a Universal Windows Platform (UWP) application在通用 Windows 平台 (UWP) 应用程序中读取 USB 描述符
【发布时间】:2016-10-03 16:12:02
【问题描述】:

我在通用 Windows 平台应用程序中有一个 HIDDevice,我想读取它的 USB 描述符。

这是制造商、序列号等信息。

HidDevice 似乎不支持这一点。我看起来像 UsbDevice 类,但它不允许从 HID 类设备创建。

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

我尝试从 HidDevice id 创建 UsbDevice,但失败了。

以前有人试过吗?

【问题讨论】:

    标签: c# usb uwp hid descriptor


    【解决方案1】:

    我不确定这是否是 100% 准确的答案,因为我还没有测试过。

    但对此的快速思考是使用平台互操作。

    所以我们可以使用下面的API来获取HID序列号,见https://msdn.microsoft.com/en-us/library/windows/hardware/ff539683(v=vs.85).aspx

    一旦在 C# 代码中声明了它,就可以 p-invoke 它。

        [DllImport("hid.dll", SetLastError = true)]
        static extern bool HidD_GetSerialNumberString(IntPtr HidDeviceObject, ref byte Buffer, Int32 BufferLength);
    

    有一个不错的开源 HidLibrary 供您参考。 https://github.com/mikeobrien/HidLibrary

    如果有帮助,请告诉我。

    【讨论】:

    • 很遗憾,你不能在 UWP 应用中使用 extern 的:/
    • @soren.bendtsen,为什么不呢?我已经验证它通过了 windows 商店认证。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-04-25
    • 1970-01-01
    • 1970-01-01
    • 2020-08-27
    • 1970-01-01
    • 2016-06-03
    • 2018-02-04
    相关资源
    最近更新 更多