连接到 USB 端口的打印机

当通用串行总线(USB)打印机通过 USB 端口连接时,USB 总线驱动程序会创建一个物理设备对象(PDO),其 硬件 ID 为 VIDvvPIDpp,并且 兼容 ID Class_7。 开发 节点 是在 Enum\USB\ 下创建的...Class_7并标识通过 USB 端口连接的打印机设备。 即插即用通过在 usbprint.inf 中的 Class_7 上使用兼容 ID 匹配,加载了 usbprint.sys。

用于任何 USB 打印机设备加载 usbprint.sys 的 usbprint.inf 条目是:

[Microsoft]
%USBPRINT.DeviceDesc% = USBPRINT_Inst,USB\Class_07,GENERIC_USB_PRINTER

Usbprint.sys 查询即插即用打印机以获取 1284 字符串,并生成与并行总线枚举器兼容的硬件 ID。 (有关详细信息,请参阅 USBPRINT 接口。)它创建一个物理设备对象(PDO),其设备节点位于 Enum\USBPRINT 下,并采用以下格式的两个硬件 ID:

USBPRINT\Company_NameModelNam1234

下图显示了通过 USB 端口连接的打印机的驱动程序堆栈。

USB 打印机即插即用。

以下示例显示了 INF 制造商部分中 可用于安装 USB 或其他总线类型打印机驱动程序的条目。 如果打印机安装在 USB 总线上,则第一行将确保等级 0 的硬件 ID 能够准确匹配。 如果将打印机安装到另一个总线上,第二行将确保硬件 ID 的等级 0 匹配。 有关详细信息,请参阅 安装自定义即插即用打印机驱动程序

 "Model Name XYZ" = Install_Section_XYZ, USBPRINT\Company_NameModelNam1234, Company_NameModelNam1234 ; plus any other compatible IDs  
"Model Name XYZ" = Install_Section_XYZ, Company_NameModelNam1234, Company_NameModelNam1234 ; plus any other compatible IDs