U 串行驱动程序 (User.sys)手机u驱动「U 串行驱动程序 (User.sys)」
为通信和 CDC 控制设备使用 Microsoft 提供的 U 驱动程序 (User.sys)。 Microsoft 鼓励你尽可能使用 Windows 附带的驱动程序。
- Windows 11
- Windows 10
- CDC 控制设备的设备制造商
在 Windows 10 中,使用内核模式驱动程序框架重写了驱动程序,从而提高了驱动程序的整体稳定性。
- 驱动程序改进了即插即用和电源管理。
- 添加了电源管理功能,如 U 选择性挂起。
此外,UWP 应用程序现在可以使用 Windows.Devices.SerialCommunication 命名空间提供的 API,这些 API 允许应用与这些设备通信。
加载用于通信和 CDC 控制设备的 Microsoft 提供的内置驱动程序 (User.sys)。
从 Windows 10 开始,User.inf 已添加到 %Systemroot%INF 目录中,该目录将 User.sys 作为设备堆栈中的功能设备对象 (FDO) 加载。 如果你的设备属于通信和 CDC 控制设备类,则 User.sys 将自动加载。 不需要编写自己的 INF 来引用驱动程序。 驱动程序是基于与包含在 Windows 中的其他 U 设备类驱动程序相似的兼容 ID 匹配来加载的。
如果要自动加载 User.sys,请在设备描述符中将类代码设置为 02,将子类代码设置为 02。 通过这种方法,你不需要为设备分发 INF 文件,因为系统使用 User.inf。 有关详细信息,请参阅通信设备的类定义 1.2。
如果设备指定了类代码 02,但子类代码值不是 02,则 User.sys 不会自动加载。 即插即用管理器试图找到驱动程序。 如果找不到合适的驱动程序,则设备可能没有加载驱动程序。 可能需要加载自己的驱动程序,或者编写一个引用另一个内置驱动程序的 INF。
如果你的设备将类和子类代码指定为 02,并且你想要加载另一个驱动程序而不是 User.sys,则必须编写一个 INF,指定要安装的设备和驱动程序的硬件 ID。 例如,查看示例驱动程序中包含的 INF 文件,并查找与你的设备类似的设备。 有关 INF 部分的信息,请参阅 INF 文件概述。
从 Windows 10 开始,User.sys 支持 U 选择性挂起。 它允许连接到串行设备的 U 在不使用时进入低功耗状态,同时系统保持在 S0 状态。 当与设备的通信恢复时,设备可以离开挂起状态并恢复工作状态。 此功能在默认情况下处于禁用状态,可以通过设置此注册表项下的“IdleUSelectiveSuspendPolicy”项来启用和配置:
若要配置 User.sys 的电源管理功能,可以将 IdleUSelectiveSuspendPolicy 设置为:
“0x00000001”:在空闲时,即设备之间没有活动数据传输时,进入选择性挂起。
“0x00000000”:仅当设备没有打开的句柄时,才进入选择性挂起。
可以通过以下两种方式之一添加该条目:
编写一个引用安装 INF 的 INF,并在“HW.AddReg”部分添加注册表项。
在扩展属性 OS 功能描述符中描述该注册表项。 添加自定义属性,将“bPropertyName”字段设置为 Unicode 字符串“IdleUSelectiveSuspendPolicy”,将“wPropertyNameLength”设置为 62 。 将“bPropertyData”字段设置为“0x00000001”或“0x00000000”。 属性值存储为小字节序 32 位整数。
有关详细信息,请参阅 Microsoft OS 描述符。
版权声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕,E-mail:xinmeigg88@163.com