2010-04-29 116 views
3

总之:我需要通过PID/VID检测我的USB CDC设备的热插拔事件,并获取由Windows在Visual C++中创建的相应虚拟COM端口最后创建一个DLL。如何在Visual C++中列出所有连接的USB设备

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

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

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

只要这是工作,我开放源码http://github.com/vinzenzweber/USBEventHandler。 Mac版本已经可用了!

回答

5

通过在MSDN和一些调试吨无用文件的挖掘后,我发现缺少的环节:来电的SetupDi在setupapi.h:更多的相关信息,以及源代码,适用于Mac和Windows,可以在我的USBEventHandler项目在github.com与发现Mac和Windows的来源。

+0

链接已死 – orbitcowboy 2016-07-26 17:09:12

+0

在此链接下找到该项目:https://github.com/jiango/USBEventHandler – vinzenzweber 2016-07-27 07:34:41

相关问题