Microsoft OS Descriptors
Microsoft OS Descriptors
Updated: April 11, 2014
USB devices store standard descriptors in firmware for the device, and its interfaces and endpoints. Independent hardware vendors (IHVs) can also store class and vendor-specific descriptors. However, the types of information that these descriptors can contain is limited. IHVs typically must use Windows Update or media such as a CD to provide their users with a variety of device-specific information such as pictures, icons, custom drivers and so on.
To help IHVs address this issue, Microsoft has defined Microsoft OS descriptors. These descriptors can be used by IHVs to store in firmware much of the information that is now typically provided to customers separately. Versions of Windows that are aware of Microsoft OS descriptors use control requests to retrieve the information, and use it to install and configure the device without requiring any user interaction. This white paper provides an introduction to Microsoft OS descriptors, including a discussion of how they are stored and retrieved.
Note: The table of compatible and sub-compatible IDs in Appendix 1 of "Extended Compat ID OS Feature Descriptor Specification" is current as of the time the specification was written, but might have since changed. The following table contains the most recent list of compatible and sub-compatible IDs. All IDs must be eight bytes, so any unused characters are filled with NULLs.
| CompatibleID | Sub-compatible ID | Description | ||||||
| (0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00) | (0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00) | No compatible or sub-compatible ID | ||||||
| "RNDIS" (0x52 0x4E 0x44 0x49 0x53 0x00 0x00 0x00) |
(0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00) | Remote Network Driver Interface Standard (RNDIS) | ||||||
| "PTP" (0x50 0x54 0x50 0x00 0x00 0x00 0x00 0x00) |
(0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00) | Picture Transfer Protocol (PTP) | ||||||
| "MTP" (0x4D 0x54 0x50 0x00 0x00 0x00 0x00 0x00) |
(0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00) | Media Transfer Protocol (MTP) | ||||||
| "XUSB20" (0x58 0x55 0x53 0x42 0x32 0x30 0x00 0x00) |
(0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00) | XNACC (Krypton) | ||||||
| "BLUTUTH" (0x42 0x4C 0x55 0x54 0x55 0x54 0x48 0x00) |
|
Bluetooth | ||||||
| "SCAN" (0x53 0x43 0x41 0x4E 0x00 0x00 0x00 0x00) |
Format as follows: 2 Letter vendor code + 1-5 ASCII characters* + 0x00 *ASCII restricted to uppercase letters, numbers, underscores. |
Scan | ||||||
| "3DPRINT" (0x33 0x44 0x50 0x52 0x49 0x4E 0x54 0x00) |
Varies | MS3DPRINT G-Code 3D Printer |
This information applies to Windows XP and later versions of Windows.
Microsoft OS Descriptors的更多相关文章
- WCID Devices -- Windows Compatible ID Devices
WCID Devices What is WCID? A WCID device, where WCID stands for "Windows Compatible ID", i ...
- 『翻译』Access USB Devices on the Web
https://developers.google.com/web/updates/2016/03/access-usb-devices-on-the-web Access USB Devices o ...
- sigar
从http://sourceforge.net/projects/sigar/files/sigar/1.6/hyperic-sigar-1.6.4.zip/download下载sigar, 参照了h ...
- 在Virtual Box虚拟机中安装MS DOS!
原文地址:https://mylinuxramblings.wordpress.com/2010/12/05/linux-mint-debian-edition-lmde-first-impressi ...
- (英文版)使用Visual Studio 2015 编写 MASM 汇编程序!
原文地址:http://kipirvine.com/asm/gettingStartedVS2015/index.htm#CreatingProject Getting Started with MA ...
- GAC write failed when upgrade with InstallShield
在接近final-build的时候,突然发现当前版本从上一个版本upgrade的时候,需要写到GAC (Global Assembly Cache)的assambly会写失败掉.但是只会在特定的Mic ...
- 矩阵乘法 and BIOS loads MBR into 0x7C00?
tianpeng <再谈矩阵与矩阵乘法> 讲的也好 矩阵乘矩阵 这个结果是怎么算出来的? 第一个矩阵第一行的每个数字(2和1),各自乘以第二个矩阵第一列对应位置的数字(1和1),然后将乘积 ...
- nexus 7 2013 驱动安装及root
驱动安装 Nexus 7 2013连接上电脑后,设备管理器显示新设备 nexus 7 待安装驱动(其实是MTP设备待安装驱动).去谷歌网站下载最新的USB驱动,version 8.0 的.与以前的版本 ...
- AU3学习笔记
目录 1. AU3是什么?能做什么? 2. 乱学AU3中的命令(语言相关)? 3. 通过简单示例学习AU3? 4. 正则表达式的学习(对大小写敏感) 5.对于GUI的相关学习 1. AU ...
随机推荐
- charles https抓包 (安卓安装证书)
的Android APP使用的都是http请求,之后改成了https,就出现了以下情况,无法正常读取抓取的内容 下面阐述一下,正确的安装步骤,为出现类似情况的朋友提供一个参考: 1.第一步: 最后点击 ...
- 第6月第4天 AVMutableComposition AVMutableVideoComposition
1. AVMutableComposition is a mutable subclass of AVComposition you use when you want to create a new ...
- 【配置】Spring和MyBatis整合
spring配置文件: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="h ...
- 多源复制遇到CREATE USER FAILED错误
MySQL Multi-Source Replication enables a replication slave to receive transactions from multiple sou ...
- 使用Cobbler批量部署Linux和Windows:Cobbler服务端部署(一)
本文记录了我使用Cobbler批量安装部署Linux和Windows系统的过程,文章主要分为三部分:Cobbler服务端的安装配置.Linux发行版CentOS和Ubuntu的自动安装部署.Windo ...
- 【干货】使用EnCase来分析windows 7文件系统------认识元数据记录$MFT,数据恢复
来源:Unit 6: Windows File Systems and Registry 6.1 Windows File Systems and Registry Windows NTFS File ...
- Paint House
There are a row of n houses, each house can be painted with one of the k colors. The cost of paintin ...
- springboot配置mybatis的mapper路径
1.在src/main/resources/目录下新建mybatis文件夹,将xxx.xml文件放入该文件夹内 2.在application.yml文件中配置: mybatis: configurat ...
- spring mvc file upload
文件上传 1.需要导入两个jar包 2.在SpringMVC配置文件中加入 1 2 3 4 <!-- upload settings --> <bean id="multi ...
- watch案例解析(element-ui el-select 无法选中问题剖析)
fire 读在最前面: 1.此文章衔接Vue 虚拟Dom 及 部分生命周期初探,相关整体知识点请先阅读后再继续本文阅读 问:子组件中明明有watch value,为什么this.$emit('inpu ...