Windows 下获取USB设备信息的通用浏览器插件实现

先挖个坑,慢慢填。


大约一周前接到的一个任务,要求写一个浏览器插件,能够自动获取用户主机所连接的USB存储类设备的底层信息(如VID,PID,序列号等),并将获取到的信息自动填入网页表单里。这么做的目的是为了方便用户快速提交相关信息,而不需要手动输入甚至另外再去下载一个程序来读取信息。


花了一周的时间做了个能满足需求的插件,这里总结一下相关技术点。


1、浏览器插件的编写,用插件就是希望能方便用户直接在页面获得USB信息。对IE的支持是必须的,如果可以的话最好能支持chrome和firefox乃至safari。

由于我以前基本是在linux下做些东西,windows已经很久没摸过了,浏览器插件更是以前完全没接触过,所以一开始免不了多google一下了。幸好有万能的google,一番辛苦的搜索后找到了一个优秀的技术博客介绍IE插件的开发,以及一个优秀易用的浏览器插件框架。

(待续)

2,、另外就是基本的html和javascript知识了,这方面也比较欠缺,因为自己是后台相关的,前端基本都是了解一点。这里估计还得稍微补补。

主要是写一个表格,其中有VID, PID, SerialNumber等列。然后动态向其中添加行,每一行代表一个USB设备。

这里还遇到一个小问题,IE9不支持对<table>中的<tbody>的innerHTML进行动态写入,没办法只能换用div来写入。


3、本机USB信息的获得,这里直接找到了微软提供额usbview代码,在vs2012下编译通过后很满意,花了几天分析了其中的关键API调研(SetupDi系列和DeviceIoControl),这方面是重点,尤其是SetupDi系列函数的用法,以及对usbview程序源代码的解读等,待我好好慢慢补充完善。为了更好的理解这方面知识,但又不过多的陷入泥潭(因为我不是搞windows开发的-,-),因此这里有很多我的抽象,可能不准确甚至不正确,但对于完成任务达到一定的理解还是很有有用的。

顺便还找了本《USB开发大全_第4版》,花了一晚上走马观花的看了全书和一些重点章节,误打误撞还补充了些usb知识,呵呵,这里也一并总结一下。


4,、最后附上完成的源代码和界面截图,供有需要的朋友参考。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值