3

简而言之:我需要通过 PID/VID 检测我的 USB CDC 设备的热插拔事件,并获取由 Windows 在 Visual C++ 中创建的相应虚拟 COM 端口,最后创建一个 dll。

我有一个 USB CDC 设备,在 Windows 上连接/断开连接时需要通知我。我的方法是使用RegisterDeviceNotification“隐形”窗口来接收WM_DEVICECHANGE通知。这部分工作到目前为止。

现在据我所知,我需要获取已插入的 USB 设备列表,对其进行迭代并使用我的 PID/VID 过滤掉设备?我假设我能够获得有关设备的更多信息,包括 COM 端口?

实现我的目标的唯一方法是使用SetupDi调用setupapi.h吗?使用 WDK / DDK 是实现我的目标的唯一方法吗?

只要它起作用,我就会在http://github.com/vinzenzweber/USBEventHandler上开源它。Mac版本已经可用!

4

1 回答 1

5

在挖掘了 msdn 上的大量无用文档并进行了一些调试后,我发现了缺少的链接: SetupDi 调用 setupapi.h:更多信息以及 Mac 和 Windows 的源代码可以在我位于github.com的 USBEventHandler 项目中找到,源代码为Mac 和 Windows。

于 2010-05-06T13:21:07.613 回答