C++ WMI获取usb deviceID数据不全的问题 Win32_USBHub

导读:本篇文章讲解 C++ WMI获取usb deviceID数据不全的问题 Win32_USBHub,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

C++ WMI获取usb deviceID数据不全的问题 Win32_USBHub

微软msdn举得C++ 例子,通过wmi获取操作系统名称Name,当然是一个数据。但是Win32_USBHub的deviceID就不只一个,比如键盘、鼠标、优盘等。如果按msdn的例子流程,只会输出第一个数据,剩下数据则无法输出。谷歌翻网页翻的头疼无解结果自己尝试了下意外解决了方法如下:

1、箭头1,所指next函数第三个参数,类型是IEnumWbemClassObject * m_pEnumClsObj,因为现在是一组数据所以将其改为数组IWbemClassObject* m_pWbemClsObj[20];

2、箭头2,是数组的大小,此处根据上面定义是20;

3、GET函数前面也应改为数组轮训获得。

4、uReturn这个值,是实际获取得数量,可以将其作为轮循标准。比如我自己电脑就是6个,所以6次get就可以了。

以上就是解决多个数据的关键,因为数据获得比较长,建议可先排序,后放到一个string,然后md5加密,成32位长度。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/96594.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!