Поделиться через


Inf-версия драйвера версии 4

Важно!

Мы рекомендуем использовать драйвер класса "Входящие" корпорации Майкрософт, а также приложения для поддержки печати (PSA) корпорации Майкрософт, чтобы настроить возможности печати в Windows 10 и 11 для разработки принтеров.

Дополнительные сведения см. в руководстве по проектированию приложений поддержки печати.

Модель установки драйвера печати версии 4 продолжает использовать INF-файлы, но также использует новый файл манифеста для записи директив установки принтера.

Важно!

Начиная с WDK для Windows 11 версии 22H2 распространяемые установщики WDF больше не поддерживаются. Чтобы узнать, как обойти это изменение, см. статью Распространяемые установщики WDF не работают в статье Известные проблемы WDK .

Пример INF

Обратите внимание, что пример INF-файла драйвера печати версии 4, представленный в этом разделе, не содержит директивы, относящиеся к принтеру. Инструкции для конкретного принтера содержатся в файле манифеста версии 4, который всегда называется, оканчивающийся на –manifest.ini. Каждый драйвер в пакете драйверов может указывать собственный файл манифеста версии 4.

В следующем примере INF-файла предполагается, что вымышленная компания Fabrikam изготовила устройства печати, которые будут установлены для работы с драйвером печати версии 4.

[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

В следующей таблице показан список директив, относящихся к принтеру, которые разрешены в драйверах печати версии 4 и драйверах класса печати.

Директива Описание Ограничения Использование
ClassVer Используется для указания того, что драйвер класса принтера имеет версию 4. Драйверы печати версии 4 должны указывать ClassVer=4.0. Драйверы печати версии 3 могут указывать ClassVer=3.0, но это необязательно. В настоящее время другие значения не поддерживаются. ClassVer=4.0

Ключевое слово DestinationDirs

Для inf-файла драйвера версии 4 требуется, чтобы destinationDir был указан для всех файлов в пакете. Поддерживаемые значения DestinationDir перечислены в следующей таблице.

Идентификатор DestinationDir Описание
66000 [Этот идентификатор назначения перегружен для драйвера версии 4]

Версия 4. Это значение должно быть задано как DefaultDestDir для драйвера печати версии 4. Указывает, что файлы должны выполняться из хранилища драйверов.

V3: указывает, что файлы должны быть установлены в каталог \3.
23 Версия 4. Этот параметр должен быть задан в качестве DestinationDir для любых цветовых профилей.

Версия 3. Цветовые профили должны быть установлены с помощью идентификатора DirID 66003 для конкретного принтера.

Ограничения INF

Драйверы печати версии 4 не должны определять другие директивы или ключевые слова принтера, указанные в следующем списке.

Ключевое слово INF-файла Тип применения
AddInterface Директива
AddReg Директива
AddService Директива
BitReg Директива
ClassInstall32 Тип раздела
ClassInstall32.Service Тип раздела
ConfigFile Директива печати версии 3
CoreDriverDependencies Директива печати версии 3
CoreDriverSections Директива печати версии 3
DataFile Директива печати версии 3
DDInstall.CoInstallers Тип раздела
DDInstall.FactDef Тип раздела
DDInstall.HW Тип раздела
DDInstall.Interfaces Тип раздела
DDInstall.LogConfigOverride Тип раздела
DDInstall.Services Тип раздела
DDInstall.WMI Тип раздела
DefaultInstall Тип раздела
DefaultInstall.Services Тип раздела
DelFiles Директива
DelReg Директива
DelService Директива
DontReflectOffline Директива
DriverFile Директива печати версии 3
DriverIsolation Директива печати версии 3
FeatureScore Директива
HelpFile Директива печати версии 3
Включение Директива
Ini2Reg Директива
InterfaceInstall32 Тип раздела
LayoutFile Директива
LogConfig Директива
Потребности Директива
PackageAware Директива печати версии 3
RenFiles Директива
UpdateIniFields Директива
UpdateInis Директива

Ссылки NTPrint

Ссылки NTPrint создаются в файле манифеста. INF-файл не требует никаких сведений о ссылках NTPrint в разделах DDInstall, CopyFiles или SourceDisksFiles.

Ссылки на модули конфигурации

Все драйверы печати используют один и тот же двоичный файл модуля конфигурации (PrintConfig.dll); отсутствует механизм выбора модуля конфигурации драйвером.

Сведения о создании INF-файла для базового драйвера принтера версии 4 см. в статье Создание базового драйвера принтера версии 4.