V4 驱动程序 INF

重要

新式打印平台是 Windows 与打印机通信的首选方式。 建议使用 Microsoft 的 IPP 收件箱类驱动程序以及打印支持应用 (PSA) 来自定义 Windows 10 和 11 中的打印体验,以便进行打印机设备开发。

有关详细信息,请参阅新式打印平台打印支持应用设计指南

v4 打印驱动程序安装模型继续使用 INF 文件,但也采用了新的清单文件来获取打印机特定安装指令。

重要

从 WDK for Windows 11 版本 22H2 开始,不再支持 WDF 可再发行的辅助安装程序。 要了解如何解决此更改,请参阅 WDK 已知问题文章中的 WDF 可再发行组件辅助安装程序不起作用

示例 INF

请注意,本主题中提供的 v4 打印驱动程序 INF 文件示例不包含任何特定于打印机的指令。 特定于打印机的说明包含在 v4 清单文件中,该文件总是以“-manifest.ini”结尾。 驱动程序包中的每个驱动程序都可以指定自己的 v4 清单文件。

以下 INF 文件示例假定一家虚构的公司 Fabrikam 生产了打印设备,这些设备将安装以使用 v4 打印驱动程序运行。

[Version]
Signature="$Windows NT$"
Provider="Fabrikam"
Class=Printer
ClassGUID={4D36E979-E325-11CE-BFC1-08002BE10318}
CatalogFile=prnfa999.CAT
DriverVer=09/12/2010,6.2.8060.4
ClassVer=4.0 ;This causes v4 setup to take place
PnpLockdown=1

[Manufacturer]
"Fabrikam"=Fabrikam,NTamd64

[Fabrikam.NTamd64] ;Add your models here
"Fabrikam Laser 9000" =        Laser9000,Fabrik9000_sdfjkals                     ;HWID example
"Fabrikam Laser 9100" =        Laser9000,Fabrik9100_sjkasj                       ;HWID example
"Fabrikam Laser 9000 series" = Laser9000,{E0691E8C-F7CC-456E-A7B5-D1FC19BA2279}  ;PrinterDriverID

[Laser9000]
CopyFiles=Laser9000_FILES

[Laser9000_FILES]
faPDL.gpd
faPDL-pipelineconfig.xml
faPDL-manifest.ini
faPDL.dll

[SourceDisksNames.amd64]
1 = %Location%,,,
2 = %Location%,,,amd64

[SourceDisksNames.x86]
1 = %Location%,,,
2 = %Location%,,,x86

[DestinationDirs]
DefaultDestDir=66000

[SourceDisksFiles]
faPDL.gpd=1
faPDL-pipelineconfig.xml=1
faPDL-manifest.ini = 1
faPDL.dll =2

[Strings]
Location="Fabrikam DVD"

INF 指令

下表列出了 v4 打印驱动程序和打印类驱动程序允许使用的打印机特定指令列表。

指令 说明 限制 使用情况
ClassVer 用于表示打印机类驱动程序为 v4。 V4 打印驱动程序必须指定 ClassVer=4.0。 V3 打印驱动程序可指定 ClassVer=3.0,但这是可选项。 目前不支持其他值。 ClassVer=4.0

DestinationDirs 关键字

v4 驱动程序 INF 要求为包中的所有文件指定 DestinationDir。 下表列出了支持的 DestinationDir 值。

DestinationDir ID 说明
66000 [此目标 ID 已为 v4 驱动程序重载]

V4:必须将此设置为 v4 打印驱动程序的 DefaultDestDir。 指定文件应从驱动程序存储区运行。

V3:指定文件应安装到 \3 目录。
23 V4:必须将此设置为任何颜色配置文件的 DestinationDir

V3:应使用特定于打印机的 DirID 66003 安装颜色配置文件。

INF 限制

V4 打印驱动程序不得定义以下列表中列出的其他特定于打印机的指令或关键字。

INF 文件关键字 使用类型
AddInterface 指令
AddReg 指令
AddService 指令
BitReg 指令
ClassInstall32 部分类型
ClassInstall32.Service 部分类型
ConfigFile v3 打印指令
CoreDriverDependencies v3 打印指令
CoreDriverSections v3 打印指令
DataFile v3 打印指令
DDInstall.CoInstallers 部分类型
DDInstall.FactDef 部分类型
DDInstall.HW 部分类型
DDInstall.Interfaces 部分类型
DDInstall.LogConfigOverride 部分类型
DDInstall.Services 部分类型
DDInstall.WMI 部分类型
DefaultInstall 部分类型
DefaultInstall.Services 部分类型
DelFiles 指令
DelReg 指令
DelService 指令
DontReflectOffline 指令
DriverFile v3 打印指令
DriverIsolation v3 打印指令
FeatureScore 指令
帮助文件 v3 打印指令
包括 指令
Ini2Reg 指令
InterfaceInstall32 部分类型
LayoutFile 指令
LogConfig 指令
需求 指令
PackageAware v3 打印指令
RenFiles 指令
UpdateIniFields 指令
UpdateInis 指令

NTPrint 参考

在清单文件中引用 NTPrint。 INF 文件的 DDInstall、CopyFiles 或 SourceDisksFiles 部分不需要任何有关 NTPrint 引用的信息。

配置模块参考

所有打印驱动程序都使用相同的二进制配置模块 (PrintConfig.dll);驱动程序没有选择配置模块的机制。

有关如何为基本 v4 打印机驱动程序创建 INF 文件的信息,请参阅生成基本 v4 打印机驱动程序