V4-Treibermanifest
Wichtig
Wir empfehlen die Verwendung des Microsoft IPP-Treibers für die Posteingangsklasse zusammen mit Print Support Apps (PSA), um das Druckverhalten in Windows 10 und 11 für die Entwicklung von Druckergeräten anzupassen.
Weitere Informationen finden Sie im Print support app design guide.
Das v4-Drucktreibermanifest ist eine Textdatei, die alle druckerspezifischen Setupdirektiven enthält. Ein v4-Drucktreibermanifest wird mit einer V4-Drucktreiber-INF-Datei als Teil des Setups für einen druckerspezifischen v4-Drucktreiber verwendet.
Die Direktiven in einem Manifest sind in Abschnitte unterteilt:
DriverConfig-Abschnitt
In der folgenden Tabelle sind die Direktiven aufgeführt, die im Abschnitt "DriverConfig" verwendet werden.
Anweisung | Beschränkungen | Verbrauch |
---|---|---|
RequiredFiles Enthält Dateien aus ntprint.inf oder ntprint4.inf. Die RequiredFiles-Direktive unterstützt den folgenden Wert in Windows 10: PWGRRenderFilter.dll: Fügt den Microsoft PWG Raster-Renderingfilter zur Liste abhängiger Dateien des Treibers hinzu. Für den Renderfilter "PWG Raster"-Renderfilter muss der Treiber eine PrintDeviceCapabilities-Datei für die Konfiguration verwenden. |
Unidrv.dll, pscript5.dll und mxdwdrv.dll sollten aus dieser Liste weggelassen werden. Sie werden automatisch aufgelöst. | Beispiele: RequiredFiles= UNIRES.DLL, STDNAMES. GPD V3HOSTINGFILTER.DLL |
RequiredClass Bewirkt, dass dieser Treiber alle Dateien eines definierten Klassentreibers mithilfe des Treiber-/Anzeigenamens des Geräts und seiner GUID als Schlüssel enthält. Dies ist der Mechanismus zum Verknüpfen eines Druckklassentreibers mit einem modellspezifischen Treiber. |
Die RequiredClass-Direktive kann nicht von einem Klassentreiber verwendet werden. Wenn Sie RequiredClass verwenden, sollten Sie Dateinamenkonflikte zwischen dem Druckertreiber und dem Druckerklassentreiber vermeiden, mit dem Sie eine Verknüpfung herstellen. Obwohl Dateien mit ähnlichen Namen nicht gegenseitig überschrieben werden, kann es während der Problembehandlung schwierig sein, zwischen der Klassentreiberpaketdatei und der Datei vom v4-Druckertreiber zu unterscheiden. |
Beispiel: RequiredClass= "Fabrikam PCL5e Class Driver",(9343720D-B67E-4451-B93F-6F721C439771) |
DriverFile Dies verweist auf die Rendering-Binärdatei. Mxdwdrv ist der Standardwert, klassentreiber können jedoch alternativ unidrv.dll oder pscript5.dll angeben. Dies ist funktional identisch mit der gleichen Direktive in einer v3 INF. |
Kann nur in einem Klassentreiber festgelegt werden. Gültige Optionen sind unidrv.dll oder pscript5.dll. V4-Drucktreiber erben entweder von einer RequiredClass oder standardmäßig auf mxdwdrv.dll | DriverFile=unidrv.dll |
DataFile Dadurch wird die primäre GPD oder PPD für diesen Treiber definiert. Dies ist funktional identisch mit der gleichen Direktive in einer v3 INF. In Windows 10 können v4-Drucktreiber weiterhin eine GPD- oder PPD DataFile-Datei angeben. Sie können jedoch auch eine DataFile beschreiben, die sich im PrintDeviceCapabilities-Format befindet. |
Erforderlich. | Beispiele: DataFile=FAPDL.gpd DataFile=FAPDL.xml |
DataFileType Der DataFileType muss beim Beschreiben einer PrintDeviceCapabilities-Datei als DataFile verwendet werden und kann auch mit einer GPD- oder PPD-basierten DataFile-Datei verwendet werden. |
Erforderlich für printDeviceCapabilities-Datei. | Beispiel: DataFileType= "application/vnd.ms-PrintDeviceCapabilities+xml" |
Flags Dies wird verwendet, um optionale Attribute anzugeben, die dem Treiber zugeordnet sind. NotShareable: Dieses Flag gibt an, dass der Treiber nicht freigegeben werden kann. Dies ist für virtuelle Treiber wie microsoft XPS Document Writer geeignet. SoftResetOnJobCancellation: Dieses Flag gibt an, dass für das Gerät beim Abbruch des Druckauftrags ein USB-Soft Reset (IOCTL_USBPRINT_SOFT_RESET) erforderlich ist. ArchiveEnabled Der v4-Treiber verwendet dieses Flag, um archivoptimierte XPS als Spooldatei anzufordern. |
Keine. | Beispiele: Flags= NotShareable, SoftResetOnJobCancellation Flags= ArchiveEnabled,NotShareable |
PrinterDriverID Dies ist eine eindeutige ID, die den Drucktreiber beschreibt. Wenn zwei Treiber dieselbe PrinterDriverID angeben, müssen sie für die Freigabe kompatibel sein und dieselben Druckererweiterungen unterstützen. |
Erforderlich. | PrinterDriverID= {guid} |
PropertyBag Gibt einen Treibereigenschaftenbehälter für diesen Treiber an. Dies ist eine kompilierte Datei, die von DriverPropertyBagTool.exe oder Visual Studio generiert wird. |
Keine. | PropertyBag= FAProperty.dpb |
ResourceFile Definiert den Namen der Zeichenfolgenressourcen-DLL des Treibers. In Windows 10 können Treiber eine ResourceFile im RESX-Format angeben. |
Keine. | Beispiele: ResourceFile= FARC.dll |
ConstraintScript Definiert den Namen der JavaScript-Einschränkungsdatei des Treibers. |
Keine. | ConstraintScript= FAConst.js |
DriverCategory Definiert die Kategorie des Geräts zwischen einer von mehreren Optionen. Gültige Optionen sind wie folgt: PrintFax.Fax PrintFax.Printer PrintFax.Printer.3D PrintFax.Printer.File PrintFax.Printer.Service PrintFax.Printer.Virtual |
Erforderlich. | DriverCategory= PrintFax.Printer Weitere Informationen zu anderen Treiberkategorien finden Sie unter Drucker INF-Dateieinträge. |
PrinterExtensionUrl Gibt eine URL für den Benutzer an, um eine Kopie der Druckererweiterungs-App abzurufen. Wird in der Druckerfreigabe verwendet. |
Keine. | PrinterExtensionUrl= "https://www.fabrikam.com/files/setup.exe"; |
DevModeMap Gibt die Devmode-Zuordnungsdatei an. Dies ist eine XML-Datei, die mit printTicket to DEVMODE-Konvertierung im JavaScript-Code verwendet wird. |
Keine. | DevModeMap= fadmmap.xml |
EventFile Gibt die XML-Datei des Treiberereignisses an. |
Keine. | EventFile= faevents.xml |
QueueProperties Gibt das Format eines Warteschlangeneigenschaftenbehälters an. Dies ist eine XML-Datei und darf NICHT kompiliert werden. |
Keine. | QueueProperties= faQueueProps.xml |
BidiUSBStatusInterface Gibt eine Liste der Hardware-IDs an, die einer oder mehreren Geräteschnittstellen entsprechen, die für die USB-Bidi-Kommunikation verwendet werden sollen. |
Keine, aber sollte nur unterstützt werden, wenn der Status über eine USB-Schnittstelle erfolgt, die nicht die Druckschnittstelle ist. | BidiUSBStatusInterface= "USB\vid_1234&pid_1234", "USB\vid_1234&pid_4567" |
UserPropertyBagScope Diese Direktive gibt den Bereich des Benutzereigenschaftenbehälters entweder als Warteschlange oder Hersteller an. Wenn diese Direktive nicht angegeben wird, ist "Queue" der Standardwert. Gültige Optionen für diese Direktive sind wie folgt: Warteschlange: Dies ist die Standardkonfiguration und entspricht dem Windows 8-Verhalten. Hersteller: Alle Warteschlangen, die dieselbe Herstellerzeichenfolge in der INF verwenden, verwenden denselben Benutzereigenschaftenbehälter. |
Keine. | UserPropertyBagScope= Hersteller |
RetrievePrintDeviceCapabilitiesFromDevice v4-Treiber können angeben, dass sie eine PrintDeviceCapabilities-Datei von WS-Print v2.0-Druckern abrufen müssen, solange sie eine PrintDeviceCapabilities-Datei als "DataFile" des Treibers und "DataFileType" festlegen, dass "DataFile" vom MIME-Typ "application/vnd.ms-PrintDeviceCapabilities+xml" ist. Gültige Optionen: True: Ermöglicht es, die lokale DataFile des Treibers durch die PrintDeviceCapabilities-Datei vom Gerät zu ersetzen. False: Die lokale DataFile des Treibers wird nicht durch die PrintDeviceCapabilities-Datei vom Gerät ersetzt. Wenn nicht angegeben, ist der Standardwert dieser Direktive "false". |
Keine. | Beispiel: RetrievePrintDeviceCapabilitiesFromDevice= true |
BidiFiles-Abschnitt
Der Abschnitt "BidiFiles" wird verwendet, um Bidi-Erweiterungsdateien zu definieren. Es ist identisch mit dem Windows 7-Format für TCP und WSD. Die USB-Schlüsselwörter sind neu.
In der folgenden Tabelle sind die Direktiven aufgeführt, die im Abschnitt "BidiFiles" verwendet werden.
Anweisung | Beschränkungen | Verbrauch |
---|---|---|
BidiSPMFile Dadurch wird die Bidi-Erweiterungsdatei für einen TCP/IP-basierten Drucker definiert. |
Keine. | BidiSPMFile=FaBidiSPM.xml |
BidiWSDFile Dadurch wird die Bidi-Erweiterungsdatei für einen WSD-basierten Drucker definiert. |
Keine. | BidiWSDFile=FABidiWSD.xml |
BidiUSBFile Dadurch wird die Bidi-Erweiterung für USB definiert. |
Keine. | BidiUSBFile=FABidiUSB.xml |
BidiUSBJSFile Dadurch wird die JavaScript-Erweiterung für USB definiert. |
Keine. | BidiUSBJSFile=FABidiUSBJS.js |
DriverRender-Abschnitt
In der folgenden Tabelle sind die Direktiven aufgeführt, die im Abschnitt "DriverRender" verwendet werden.
Anweisung | Beschränkungen | Verbrauch |
---|---|---|
PageOutputQuality. [OptionName] Ändert die Bildkomprimierung basierend auf dem Wert im Auftrag PrintTicket für PageOutputQuality |
OptionName muss ein Im Standard PrintSchema-Namespace angegebener Name sein. | PageOutputQuality.Draft= MxdcImageType.JPEGHigh PageOutputQuality.Normal= MxdcImageType.JPEGMedium PageOutputQuality.High= MxdcImageType.PNG |
XpsFormat Ändert das vom Drucksystem für diesen Treiber generierte XPS-Format. Es können mehrere Werte angegeben werden, und die Reihenfolge stellt die Einstellung des Treibers dar. |
Nicht verfügbar für die Verwendung in Klassentreibern, die Unidrv/PScript-Rendering verwenden. | XpsFormat=XPS XpsFormat=OpenXPS XPSFormat=OpenXPS,XPS XPSFormat=XPS,OpenXPS |
Ausgabeformat Die OutputFormat-Direktive beschreibt eine einzelne PDL, die von diesem Treiber mithilfe eines MIME-Typs generiert wird. Diese Informationen werden während des CreateJob- oder CreateJob2-Vorgangs für WSD-Drucker verwendet. |
Keine. | Zu den gültigen Verwendungstypen gehören: OutputFormat= "Anwendung/Ochsen" OutputFormat= "application/vnd.ms-xpsdocument" OutputFormat= "image/pwg-raster" OutputFormat= "application/vnd.ms-3mfdocument" Alle anderen gültigen definierten MIME-Typen können auch hier angegeben werden. |
Das Schlüsselwort MxdcImageType für die PageOutputQuality-Direktive weist die folgenden zulässigen Werte auf:
MxdcImageType-Wert |
---|
MxdcImageType.JPEGHigh JPEG mit hoher Komprimierung (kleinere Dateien) |
MxdcImageType.JPEGMedium Mittlere Komprimierung JPEG |
MxdcImageType.JPEGLow JPEG mit niedriger Komprimierung |
MxdcImageType.PNG PNG-Dateityp (größte Dateien) |
FileSave-Abschnitt
Dieser Abschnitt unterstützt das Szenario zum Speichern von Dateien. Wenn ein v4-Drucktreiber mit dem neuen PORTPROMPT-Porttyp installiert wird, gibt dieser Abschnitt die Dateierweiterungen an, die im Fenster "Gemeinsame Datei " angezeigt werden sollen, und gibt außerdem die lokalisierbaren Ressourcenzeichenfolgen an, die die Erweiterungen und das Dialogfeld selbst unterstützen.
Anweisung | Beschränkungen | Verbrauch |
---|---|---|
<FileExtensionName> Diese Direktive beschreibt die FileExtension, die beim Speichern einer Datei von diesem Treiber mithilfe des PORTPROMPT-Ports verwendet werden soll. Der Wert ist eine resourceID aus der ResourceFile des Treibers. Nur für XPS und OXPS kann eine ResourceID von 0 angegeben werden, und der Druckspooler verwendet seine internen Ressourcen für diese. |
Keine. | <FileExtensionName>= <resourceID> Xps=1234 |
SaveAsTitle Diese Direktive beschreibt den Titel, der im Dialogfeld "Datei speichern" verwendet werden soll. Der Wert ist eine resourceID aus der ResourceFile des Treibers. |
Keine. | SaveAsTitle= <resourceID> SaveAsTitle=4321 |
PrinterExtensions-Abschnitt
Der Abschnitt "PrinterExtensions" gibt eine Druckererweiterung und die unterstützten Aufrufmodi an. Für beide Einträge wird die App automatisch beim Drucksystem registriert. Darüber hinaus wird die App mit zwei verschiedenen Parametern konfiguriert, der PrinterDriverID und der ReasonID in dieser Reihenfolge. Daher muss jeder Eintrag eine andere PrinterExtensionID-GUID verwenden.
In der folgenden Tabelle sind die Direktiven aufgeführt, die im Abschnitt "PrinterExtensions" verwendet werden.
Anweisung | Beschränkungen | Verbrauch |
---|---|---|
DriverEvent App-Wartung des DriverEvent-Modus. |
Keine. | DriverEvent= app.exe,{extensionID GUID} |
PrintPreferences App-Wartung des PrintPreferences-Modus. |
Keine. | PrintPreferences= app.exe, {extensionID GUID} |
Nachfolgend sehen Sie ein Beispiel für ein v4-Drucktreibermanifest.
[DriverConfig]
DataFile=FAPDL.xml
RequiredFiles=UNIRES.DLL,STDNAMES.GPD,STDDTYPE.GDL,STDSCHEM.GDL,STDSCHMX.GDL,XPSSVCS.DLL,MSXPSINC.GPD,PWGRRenderFilter.DLL
ResourceFile=FARC.dll
PropertyBag=FAProperty.dpb
PrinterDriverID={GUID}
DriverCategory=PrintFax.Printer
ConstraintScript=faconst.js
EventFile=faevents.xml
PrinterExtensionUrl="https://www.fabrikam.com/download.asp?uiapp=120"
UserPropertyBagScope=Manufacturer
DataFileType="application/vnd.ms-PrintDeviceCapabilities+xml"
RetrievePrintDeviceCapabilitiesFromDevice=true
[BidiFiles]
BidiSPMFile=FABidiSPM.xml
BidiWSDFile=FABidiWSD.xml
BidiUSBFile=FaBidiUSB.xml
BidiUSBJSFile=FABidiUSBJS.js
[DriverRender]
PageOutputQuality.Draft=MxdcImageType.JPEGHigh
PageOutputQuality.Normal=MxdcImageType.JPEGMedium
PageOutputQuality.High=MxdcImageType.PNG
OutputFormat="image/pwg-raster"
[PrinterExtensions]
DriverEvent=FAapp.exe,{GUID}
PrintPreferences=FAapp.exe,{GUID2}
Verwandte Artikel
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für