V4 驱动程序 INF
重要
建议使用 Microsoft 的 IPP 收件箱类驱动程序以及打印支持应用 (PSA) ,自定义 Windows 10 和 11 中的打印体验,以便进行打印机设备开发。
有关详细信息,请参阅 打印支持应用设计指南。
v4 打印驱动程序设置模型继续使用 INF 文件,但也使用新的清单文件来捕获特定于打印机的设置指令。
重要
从 WDK for Windows 11 版本 22H2 开始,不再支持 WDF 可再发行组件共同安装程序。 若要了解如何解决此更改,请参阅 WDF 可再发行组件共同安装程序在WDK 已知问题 中不起作用一文。
示例 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 文件关键字 (keyword) | 使用类型 |
---|---|
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 | 指令 |
HelpFile | v3 打印指令 |
包括 | 指令 |
Ini2Reg | 指令 |
InterfaceInstall32 | 节类型 |
LayoutFile | 指令 |
LogConfig | 指令 |
需求 | 指令 |
PackageAware | v3 打印指令 |
RenFiles | 指令 |
UpdateIniFields | 指令 |
UpdateInis | 指令 |
NTPrint 引用
NTPrint 引用是在清单文件中进行的。 INF 文件不需要其 DDInstall、CopyFiles 或 SourceDisksFiles 部分中有关 NTPrint 引用的任何信息。
配置模块参考
所有打印驱动程序使用相同的配置模块二进制文件 (PrintConfig.dll) ;驱动程序没有用于选择配置模块的机制。
相关主题
有关如何为基本 v4 打印机驱动程序创建 INF 文件的信息,请参阅 生成基本 v4 打印机驱动程序。
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈