USB调试笔记
+ -

UsbTreeView中设备驱动信息获取方法

2021-10-11 711 1

UsbTreeView是一个专门解析USB设备描述符的工具,可以显示USB设备的一系列属性值。其中包括驱动路径,和inf配置文件路径,查询了一下,没找到可以获取这些驱动信息的SetupApi。好奇这个软件是怎么实现的,于是对它调用的API抓了一下包,找到了它的实现方法。

(1)驱动路径获取方法

可见驱动路径是通过读取注册表

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet\services\usbccgp项的ImagePath子项来获取的。

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet\services是固定位置,usbccgp是设备的service属性值,可以通过调用SetupDiGetDeviceRegistryProperty传参SPDRP_SERVICE来获得。

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet\services下包含一些列的驱动服务子项,每项下面都有ImagePath这一子项,包含了驱动的路径。

(2)inf文件位置

inf文件位置是通过读取HKEY_LOCAL_MACHINE\CurrentControlSet\Control\Class{4d36e972-e325-11ce-bfc1-08002be10318}\0009下的InfPath子项得到。

HKEY_LOCAL_MACHINE\CurrentControlSet\Control\Class\是固定位置

{4d36e972-e325-11ce-bfc1-08002be10318}\0009是设备的DriverKey,可以通过调用SetupDiGetDeviceRegistryProperty传参SPDRP_DRIVER来获得。

HID人机交互QQ群:564808376    UAC音频QQ群:218581009    UVC相机QQ群:331552032    BOT&UASP大容量存储QQ群:258159197    STC-USB单片机QQ群:315457461    USB技术交流QQ群2:580684376    USB技术交流QQ群:952873936   

0 篇笔记 写笔记

USBTreeView遇到连续的转换接口描述符不解释情况说明
今天拿到一个USB摄像头,对其进行数据格式分析,出现了一个令人迷惑的问题…事情是这样的,我用POTPLAYER打开摄像头,使用BUSHOUND进行抓包,选择的备用接口是0x0c CTL 01 0b 0c 00 01 00 00 00 SET_INTERFACE为了查看该端点的数据大......
Windows下的USB设备描述符分析工具-UsbTreeView
UsbTreeView是Windows下的一款关于USB描述符分析的工具,该工具俱有以下特点:实时显示USB设备的连接状态以树状的形式显示连接到PC机中的所有USB设备,集线器和控制器可完美的分析连接到PC机中USB设备的各类USB描述符信息。支持USB1.0/USB2.0/USB3.x规范协议......
UsbTreeView中设备驱动信息获取方法
UsbTreeView是一个专门解析USB设备描述符的工具,可以显示USB设备的一系列属性值。其中包括驱动路径,和inf配置文件路径,查询了一下,没找到可以获取这些驱动信息的SetupApi。好奇这个软件是怎么实现的,于是对它调用的API抓了一下包,找到了它的实现方法。(1)驱动路径获取方法......
UAC复合设备(麦克风,扬声器,HID设备)的示例
UAC符合设备(麦克风,扬声器,HID设备)在设备管理器中如下图所示:在BUSHOUND下如下图所示:UAC音频设备UAC音频设备包括扬声器和麦克风。其中USB Pnp Audio Device使用了接口0,1,2,分别用于控制接口,扬声器和麦克风。HID音量控制设备USB输入设备用于音频的......
USBTreeView
USBTreeView是一针对 Windows 操作系统的 USB 设备分析工具,它可以用于查看 USB 设备的属性、配置、接口、中断管道等详细信息,并能够实时监测 USB 总线上的交互信息、访问权限等。使用 USBTreeView 可以帮助用户更好地理解和诊断 USB 设备的问题,特别是在开发和......
USB2.0集线器高速描述符UsbTreeViewer解析示例
=========================== USB Port4 ===========================Connection Status : 0x01 (Device is connected)Port Chain ......
红外摄像头USBTreeViewer信息
=========================== USB Port1 ===========================Connection Status : 0x01 (Device is connected)Port Chain ......
USBTreeViewer获取字节串描述符
缘由在于自己虚拟了一个USB控制器集线器,故在使用USBTreeViewer查看其USB集线器下的设备信息时,字节串描述符的问题解决。USB的开发人员肯定对USBTreeViewer这个工具不陌生,我们使用它来查看电脑中USB设备的相关信息。例如设备的连接信息,USB设备描述符,USB配置描述......
USBTreeViewer设备端口连接信息Connection Information
USBTreeViewer会对集线器下的各端口连接情况设置不同的图标,代表着当前集线器端口的状态信息。本人通过USBViewer源代码可知,其主要有以下几种状态:图标说明USB端口,无连接设备,USB2.0及以下USB端口,无设备连接、超高速端口连接USB2.0......
USB设备总线拓扑结构生成原理及方法
在Windows系统的内核中,USB堆栈提供了一系列的API接口。内核或者应用程序可以使用这些API接口来确定USB总线的拓扑结构和相关的USB设备信息。我们常用的USBTreeViewe是基于微软开源usbview二次开发的,而usbview就是使用这些API接口来实现USB总线拓扑结构和US......
关注公众号
取消
感谢您的支持,我会继续努力的!
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

您的支持,是我们前进的动力!