【问题标题】:How to Detect / Read / Write multiple HID devices如何检测/读取/写入多个 HID 设备
【发布时间】:2014-01-29 06:23:27
【问题描述】:

我正在使用 Temper Gold 1.1 PCsensor USB。我可以将它们全部连接到我的电脑,我可以处理单个 USB 设备,这些设备被检测为 HID,但是当有多个设备时,我会迷路。

我无法识别正在读取的设备。或如何修复设备识别,因为 USB 设备是可互换的,我不知道如何让它们工作。

我正在尝试在监视器上构建多个 USB 读取显示,从 USB 控制器读取并在屏幕上显示。作为整个屏幕上的 2x3 网格。

任何帮助将不胜感激。

开发语言为Visual Basic 6,或Visual Basic .Net,Delphi 7

【问题讨论】:

  • 首先在 Windows 中是否将每个设备都枚举为单独的 HID?如果它们是单独的 USB 设备,您应该能够通过它们的 VID、PID 和 USB 序列号来识别每个 USB HID 设备。
  • 是的,它们被识别为单独的设备,但 USB 没有序列号,或者我不知道。
  • 它们的 PID 是相同的还是不同的?如果 PID 相同,您可以使用 USBlyzer 查找序列号:usblyzer.com
  • 感谢您的回复。对于所有已连接的设备,供应商 id 为 0c45,pid 为 7401
  • 然后你需要通过序列号来识别每台设备

标签: .net delphi vb6 usb hid


【解决方案1】:

你看过VB6 TEMPer Gold USB HID Thermometer Class了吗?

这可能无法解决从一个 USB 端口移动到另一个 USB 端口时“跟随”特定设备的问题,但您可能会发现一些有用的东西。

但这些设备存在问题。它们可以自发地通过 HID 键盘虚拟设备发送数据,当这些击键最终到达外壳(Explorer 桌面)时,这可能会造成严重破坏。

除非可以在这些设备上禁用键盘功能,否则它们还不能用于任何类型的生产用途。我从来没有找到任何方法来做到这一点。

【讨论】:

  • 你能指出我这一点非常好。我检查了那门课。它可以通过一个 USB 找到。但我的问题仍然存在。你正在写关于粗暴的信息。我认为如果我一次打开一个设备并读取数据一段时间然后关闭该设备将是一个好主意,或者练习,因为您似乎对这些东西有更多的经验/技能。
  • 这是一个完全不同的问题。无论如何都没有简短的答案,因为 VB6 多线程不是一件小事。一种方法是使用 ActiveX EXE,并在文档中进行了介绍。其他替代方案需要 3rd 方库。
猜你喜欢
  • 2011-04-08
  • 2012-05-10
  • 1970-01-01
  • 1970-01-01
  • 2016-10-28
  • 1970-01-01
  • 2016-12-07
  • 2014-01-20
  • 2021-09-07
相关资源
最近更新 更多