原始博文链接地址:https://www.silabs.com/community/interface/knowledge-base.entry.html/2013/11/21/windows_usb_devicep-aGxD

现整理翻译如下,但鼓励还是看原文好,因为我的英语也很菜o(╥﹏╥)o

What is a Windows USB device path and how is it formatted?

Windows操作系统通过一个“设备路径”来唯一“标识”接入系统中的USB设备/接口。该“设备路径”常常通过使用win32 的API函数 CreatFile()来与USB设备建立通信。

USB Device Path Format

大多数情况下,windows中USB设备路径的格式如下:

\?usb#vid_vvvv&pid_pppp#ssss#{gggggggg-gggg-gggg-gggg-gggggggggggg}

其中:

vvvv是USB厂商ID,由4个十六进制的字符构成。

pppp是USB的产品ID,由4个十六进制的字符构成。

ssss是USB序列号,由n个 字符构成。

gggggggg-gggg-gggg-gggg-gggggggggggg 是设备接口GUID,GUID用于设备对应驱动连接设备应用时使用。GUID通常被指派到驱动或者驱动文件INF中,被应用程序加载相应的设备驱动。

Composite USB Device Path Format For Interfaces

具有多个接口的USB设备的设备路径格式:

\?usb#vid_vvvv&pid_pppp&mi_ii#aaaaaaaaaaaaaaaa#{gggggggg-gggg-gggg-gggg-gggggggggggg}

vvvv是USB厂商ID,由4个十六进制的字符构成。

pppp是USB的产品ID,由4个十六进制的字符构成。

ii是USB接口号。

aaaaaaaaaaaaaaaa是唯一的,由windows基于类似USB物理端口地址或者接口号来生成的字符。

gggggggg-gggg-gggg-gggg-gggggggggggg 是设备接口GUID,GUID用于设备加载驱动时使用。

Unique Device Paths

Windows要求每个USB设备和接口的设备路径都是唯一的。如果两个同时插到机器上的USB设备具有相同的VID/PID/序列号,那么前面描述的USB设备路径格式便无法为这两个设备生成一个唯一的设备路径进行区分。此时,windows将会按照“复合USB设备路径格式”描述的方式来进行生成,当未设置设备序列号时也将使用这种方式进行生成。

Registry Keys Using Device Path Information

The device path is useful for locating the USB device registry keys, where additional settings and information are stored for the device instance. USB device registry keys are stored in the following location:

设备路径可以用来定位USB设备的注册表中的键值,该键值用来存储与设备有关的设置和信息,USB设备注册键值存储在如下位置:

[HKLM/SYSTEM/CurrentControlSet/Enum/   USBVID_vvvv&PID_ppppssss],

Where:
vvvvUSB 厂商ID.
ppppUSB 产品ID.
ssss是USB序列号或 由windows产生的唯一字符

For example, the CP210x VCP drivers stores the COM port number in the Device ParametersPortName registry key as shown in the figure below.

例如,the CP210x VCP驱动存储着COM端口号码 由如下图所示的 设备参数中的 端口名那一栏进行保存。

Finding the Device Path Parameters using Device Manager

厂商ID/产品ID/序列号或者一个由windows唯一产生的字符可以通过设备管理器进行查看,打开USB设备属性并点击详细信息,并在设备性质那个下拉菜单选项中选择“设备实例路径”,本质上是通过使用CreateFile()函数来进行查看的,设备实例路径与标准的设备路径格式有轻微不同。

USB设备路径是什么,是什么格式的?相关推荐

  1. linux 查看libusb版本,linux / libusb获取usb设备路径

    我使用libusb来枚举一些usb设备.现在我想获得"设备路径".我认为这不是usb device-path,因为我没有成功使用谷歌. 如果我用linux连接usb设备,我会在dm ...

  2. MFC 获取所有USB设备 列举所有USB设备 列举所有USB HUB

    获取所有USB设备,列举所有USB设备 #include <INITGUID.h>  #include <setupapi.h> #pragma comment(lib, &q ...

  3. Linux下如何挂载FAT32格式USB设备

    From: http://hi.baidu.com/enovo/blog/item/c901eb249c0783064c088db3.html 挂u盘之前,运行命令cat /proc/partitio ...

  4. linux查看usb设备文件,linux – 确定USB设备文件路径

    So which device file is used for USB? How can i indentify it? 您在/ sys /后面看到的主要是有关设备的配置/信息. / dev / b ...

  5. 如何使用 WinUSB 与 USB 设备 (USBDevice) 通信

    选择 USB 设备的驱动程序模型 https://github.com/libusbx/libusbx/wiki/Windows-Backend WinUSB does not support Win ...

  6. WinUSB - 微软为所有 USB 设备提供的常规驱动程序

    WinUSB - 微软为所有 USB 设备提供的常规驱动程序  [复制链接]     shangdawei 20 主题 0 好友 717 积分 高级会员 莫元 696 发消息 电梯直达 1楼  发表于 ...

  7. Linux usb设备驱动(2)--- usbmouse.c 源码分析

    一个 USB 总线引出两个重要的链表,一个为 USB 设备链表,一个为 USB 驱动链表.设备链表包含各种系统中的 USB 设备以及这些设备的所有接口,驱动链表包含 USB 设备驱动程序(usb de ...

  8. Linux 查看usb设备信息

    下面的信息都是在VMware中运行Ubuntu12-04系统上执行的.同样该命令也支持在嵌入式系统中进行USB调试. 一.cat设备节点获取信息 在一些嵌入式开发中需要调试USB功能,经常会cat / ...

  9. Windows操作系统环境下调查USB设备使用痕迹方法研究

    http://www.xsjs-cifs.com/article/2015/1008-3650-40-2-138.html Windows操作系统环境下调查USB设备使用痕迹方法研究 USB是一种外部 ...

最新文章

  1. python 装饰器 参数-Python装饰器(4)带参数的装饰器
  2. 【Android FFMPEG 开发】FFMPEG ANativeWindow 原生绘制 ( 设置 ANativeWindow 缓冲区属性 | 获取绘制缓冲区 | 填充数据到缓冲区 | 启动绘制 )
  3. Python-OpenCV 处理图像(四):图像直方图和反向投影
  4. wxWidgets:wxComboCtrl 示例
  5. iOS开发之SQLite--C语言接口规范(三)——Binding Values To Prepared Statements
  6. JS对文本框输入字符的限制
  7. 【渝粤教育】21秋期末考试工程经济10202k2
  8. linux mariadb 乱码,MariaDB插入中文数据乱码解决过程
  9. H5入门-xhtml+css2-第01节
  10. java 数值变量_Java 中数值变量赋值问题
  11. HTML标记语言——(二)
  12. 力扣-150 逆波兰表达式求值
  13. (十一)洞悉linux下的Netfilteriptables:iptables命令行工具源码解析【上】
  14. hkust ucl 电子工程比较_通信工程专业
  15. EndNote X7集成到office word2016(原有EndNote选项卡,却突然消失)
  16. 嵌入式软件架构设计(转载)
  17. Deecamp笔记——点云目标跟踪 Open3D连续可视化
  18. python 操作ps脚本_脚本之王python完美实现换脸技术,毫无PS痕迹!
  19. 100以内的勾股数python_常见100以内勾股数
  20. 【SEO案例】百度快照劫持怎么处理

热门文章

  1. js美化系统默认Prompt仿APP移动端弹出,可以自行修改
  2. 求Geohash编码周围的8个编码
  3. 芯片验证需要围绕DUT做什么?
  4. 流畅的Python读书笔记
  5. hbuilder支持java插件_HBuilder 第三方插件开发
  6. STM32F0 HAL库软件模拟串口发送数据
  7. 【Python机器学习】Sklearn库中Kmeans类、超参数K值确定、特征归一化的讲解(图文解释)
  8. 微信小程序无法弹出授权登录窗口
  9. 傅里叶变换及其在opencv中图像去噪的实现
  10. 简易版 图书管理系统