Freigeben über


Drucker-INF-Dateieinträge

Wichtig

Die moderne Druckplattform ist die bevorzugte Methode von Windows für die Kommunikation mit Druckern. 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 unter Moderne Druckplattform und im Leitfaden zum Entwurf der Druckunterstützungs-App.

Damit eine Installationsanwendung einen Drucker auf einem Druckserver installieren kann, muss sie zunächst die Funktion AddPrinterDriverEx des Spoolers aufrufen, um Treiberdateien zu laden, und dann die Funktion AddPrinter des Spoolers aufrufen, damit der Drucker auf dem Server verfügbar ist.

Die Funktion AddPrinterDriverEx erfordert eine DRIVER_INFO_3-Struktur als Eingabe. Die Funktion AddPrinter erfordert eine PRINTER_INFO_2-Struktur als Eingabe. Das Standardinstallationsprogramm für Druckerklassen, „Ntprint.dll“, liest Drucker-INF-Dateien, um Zeichenfolgenwerte abzurufen, die in diesen Strukturen platziert werden müssen, bevor die Funktionen aufgerufen werden.

Es wurde ein Satz von INF-Dateieinträgen für Druckertreiber definiert, die „Ntprint.dll“ erkennt. Diese Einträge haben das folgende Format:

Eintragsname = Wert

Dabei ist Eintragsname eine Zeichenfolge, die den Eintrag identifiziert, und Wert ist ein Zeichenfolgenwert, der dem Eintrag zugewiesen ist.

In der folgenden Tabelle werden INF-Dateieinträge aufgelistet, die in Drucker-INF-Dateien enthalten sein sollten. Die Tabelle enthält für jeden Eintrag die folgenden Elemente:

  • Der Wert, der dem Eintrag zugewiesen werden soll.

  • Der Standardwert, den „Ntprint.dll“ verwendet, wenn der Eintrag nicht definiert ist.

  • Das Strukturelement, in dem „Ntprint.dll“ einen Zeiger auf den Eintragswert platziert.

INF-Dateieintrag Wert Standardwert (wenn kein Eintragswert angegeben ist) Strukturelement
ConfigFile Der Name der Druckerschnittstellen-DLL des Treibers. Der für DriverFile angegebene Wert. pConfigFile-Element der DRIVER_INFO_3-Struktur
DataFile Der Name der zugeordneten Datendatei eines Treibers, z. B. einer PPD-Datei. Der Abschnittsname des Treibers innerhalb der INF-Datei. pDataFile-Element der DRIVER_INFO_3-Struktur
DefaultDataType Nicht mit NT-basierten Betriebssystemen verwendet.
DriverCategory Siehe Anmerkung 1 nach dieser Tabelle. Wenn die INF-Datei keine Treiberkategorie angibt (wie die meisten v3-Treiber), wird davon ausgegangen, dass die Kategorie des Treibers PrintFax.Printer ist. Keine
DriverFile Der Name der Drucker-Grafik-DLL des Treibers. Der Abschnittsname des Treibers innerhalb der INF-Datei. pDriverPath-Element der DRIVER_INFO_3-Struktur
ExcludeFromSelect Siehe Anmerkung 2 nach dieser Tabelle. Keine Keine
HelpFile Der Name der Hilfedatei der Schnittstellen-DLL. Keine. Es ist keine Hilfedatei angegeben. pHelpFile-Element der DRIVER_INFO_3-Struktur
LanguageMonitor Der Name eines Sprachmonitors, der dem Druckertreiber zugeordnet werden soll. Weitere Informationen finden Sie im Abschnitt Wertformat „LanguageMonitor“. Keine. Es ist kein Sprachmonitor angegeben. pMonitorName-Element der DRIVER_INFO_3-Struktur
PrintProcessor Der Name eines Druckprozessors, der der Druckerwarteschlange zugeordnet werden soll. Weitere Informationen finden Sie im Abschnitt Wertformat „PrintProcessor“. Der Standarddruckprozessor (WinPrint) wird verwendet. pPrintProcessor-Element der DRIVER_INFO_2-Struktur
VendorSetup Der Name einer Funktion innerhalb einer vom Hersteller bereitgestellten DLL, die benutzerdefinierte Druckereinrichtungsvorgänge verarbeitet. Keine. Siehe Anmerkung 3 nach dieser Tabelle. Keine
InboxVersionRequired Die Mindestversion, die für alle Kerntreiber akzeptabel ist, auf die die INF verweist. Weitere Informationen zu „InboxVersionRequired“ finden Sie unter Anweisung „INF InboxVersionRequired“. Keine Keine

1 (DriverCategory): Wenn die INF-Datei eine Kategorie angibt, sind dies die zulässigen Werte (jeweils 0 bis 5) für die Angabe von Kategorien:

Treiberkategorie Wert Beschreibung
PrintFax.Printer 0 Eine Druckwarteschlange, die einen mit dem Computer verbundenen Drucker (über ein lokales Protokoll oder ein Netzwerkprotokoll) oder einen Proxy für einen physischen Drucker auf einem anderen Computer darstellt. Wenn der Benutzer auf einem physischen Drucker druckt, ist das Ergebnis Papier mit dem darauf gedruckten Dokument.
PrintFax.Fax 1 Eine Druckwarteschlange, die ein physisches oder virtuelles Faxgerät darstellt. Wenn der Benutzer auf einem Faxdrucker druckt, ist das Ergebnis (möglicherweise nach weiteren Benutzerinteraktionen) das Senden eines Faxes.
PrintFax.Printer.File 2 Eine Druckwarteschlange, die Softcopy-Dokumente generiert. Wenn der Benutzer auf einem Dateidrucker druckt, muss der Benutzer zunächst einen Dateinamen eingeben. Anschließend sendet der Spooler die gedruckte Ausgabe an diese Datei. Dateidrucker erfordern stets einen Dateinamen und akzeptieren keine anderen Benutzereingaben. Wenn dem Benutzer keine Option zur Angabe eines Dateinamens zur Verfügung steht, generiert die App einen Dateinamen, der dem Spooler zur Verfügung gestellt wird. Gängige Beispiele für Dateidrucker sind Microsoft XPS Document Writer (MXDW) und PDF-Writer.
PrintFax.Printer.Virtual 3 Eine Druckwarteschlange mit einem Treiber, der einen Vorgang für gedruckte Daten ausführt, der für den Druckspooler nicht transparent ist. Wenn der Benutzer auf einem virtuellen Drucker druckt, gehören zu den möglichen Ergebnissen das Speichern des gedruckten Dokuments auf dem Computer, das Senden des gedruckten Dokuments an eine andere Anwendung oder das Senden des gedruckten Dokuments per E-Mail. Ein gängiges Beispiel für das Drucken auf einem virtuellen Drucker ist das Senden des gedruckten Dokuments an den Microsoft Office OneNote-Drucker. Wenn der Benutzer auf einem virtuellen Drucker druckt, kann eine weitere Benutzerinteraktion erforderlich sein, die vom Treiber oder einer Treiberkomponente initiiert wird. Weitere Informationen finden Sie unter Virtuelle Drucker in Drucker-INF-Dateien.
PrintFax.Printer.Service 4 Eine Druckwarteschlange, die einen Druckdienst darstellt. Wenn der Benutzer zu einem Dienst druckt, besteht das Ergebnis darin, dass ein Drittanbieter den gedruckten Inhalt empfängt (möglicherweise nach weiteren Benutzerinteraktionen). Der Benutzer kann anschließend an einem physischen Standort des Drittanbieters die gedruckte Ausgabe abholen.
PrintFax.Printer.3D 5 Eine Druckwarteschlange, die den Datenstrom für einen 3D-Drucker darstellt. Wenn diese Kategorie unbeabsichtigt für einen 2D-Drucker (einen regulären Drucker) angegeben wird, gibt der 2D-Drucker einfach den 2D-Inhalt des Datenstroms aus. Wenn diese Kategorie korrekt für einen 3D-Drucker angegeben wurde, aber ein 2D-Datenstrom an den 3D-Drucker gesendet wurde, generiert der 3D-Drucker keine Ausgabe.

Beachten Sie außerdem, dass v4-Druckertreiber eine Manifestdatei verwenden. Weitere Informationen finden Sie unter V4-Treibermanifest.

Hinweis

2 (ExcludeFromSelect): Die Geräte-ID eines Geräts, das nicht im Dialogfeld Gerät auswählen oder im Assistenten „Drucker hinzufügen“ angezeigt werden soll. Für Drucker umfasst dies alle PnP-Einträge von Geräten mit doppelten Gerätebeschreibungen in der INF-Datei. Dies können beispielsweise Geräte mit mehreren Einträgen für Infrarot und parallele Enumeration oder für einen anderen Bus sein. Im Gegensatz zu allen anderen Einträgen in dieser Tabelle muss der Eintrag „ExcludeFromSelect“ im Abschnitt „Steuerungsflags“ der INF-Datei angezeigt werden. Weitere Informationen finden Sie im Abschnitt INF-Steuerungsflags.

Hinweis

3 (VendorSetup): Wenn kein VendorSetup-Eintrag angegeben ist, werden keine angepassten Einrichtungsvorgänge ausgeführt. Insbesondere ist während der Installation des Druckprozessors, des Druckmonitors oder des Druckertreibers keine Benutzeroberfläche zulässig, mit Ausnahme der Verwendung einer Benutzeroberfläche über den VendorSetup-INF-Eintrag. Weitere Informationen zu diesem Eintrag finden Sie unter Angepasste Druckereinrichtungsvorgänge.

Wichtig

Da „VendorSetup“ mittlerweile veraltet ist, sollten Sie „VendorSetup“ nicht für neue v3- oder v4-Treiber verwenden, die Sie entwickeln. Diese Informationen zu „VendorSetup“ dienen lediglich Referenzzwecken oder werden für die Wartung vorhandener v3-Treiber bereitgestellt, die diese INF-Anweisung bereits verwenden.

Drucker-INF-Dateieinträge werden in der Regel innerhalb der INF-Dateidatenabschnitte des Druckers angegeben. Beispiele finden Sie in den INF-Beispieldateien für Drucker.

Wertformat „LanguageMonitor“

Wenn ein LanguageMonitor-Eintrag in einer Drucker-INF-Datei enthalten ist, ist das Wertformat wie folgt:

LanguageMonitor=" MonitorName, MonitorDLLName "

Dabei ist MonitorName eine Textzeichenfolge, die den Anzeigenamen des Monitors darstellt, und MonitorDLLName ist der Dateiname der Monitor-DLL.

Wertformat „PrintProcessor“

Wenn ein PrintProcessor-Eintrag in einer Drucker-INF-Datei enthalten ist, ist das Wertformat wie folgt:

PrintProcessor=" PrintProcessorName, PrintProcessorDLLName "

Dabei ist PrintProcessorName eine Textzeichenfolge, die den Anzeigenamen des Druckprozessors darstellt, und PrintProcessorDLLName ist der Dateiname der DLL.

Abhängige Dateien

Eine abhängige Datei ist eine Druckertreiberdatei, die in einem Drucker-INF-Datei-Installationsabschnitt mit der dirid 66000 enthalten ist, jedoch nicht den Einträgen „DriverFile“, „DataFile“, „ConfigFile“ oder „HelpFile“ zugewiesen ist.

Das folgende Beispiel zeigt Auszüge aus einer INF-Datei, die drei abhängige Dateien installiert, indem sie diese in das Druckertreiberverzeichnis kopiert (d. h. in das durch dirid 66000 angegebene Verzeichnis):

[Contoso]
%PRINTER_MODEL_123%=Contoso_Install_Section,LPTENUM\Contoso_1284.4_P29C5
...
[Contoso_Install_Section]
CopyFiles=@Contoso.ini,@Contoso.xml,@Contoso.dll
...
[DestinationDirs]
DefaultDestDir=66000
...
[Strings]
PRINTER_MODEL_123 = "Contoso Printer Model 123"

In diesem Beispiel ist „Contoso.ini“ eine Drucker-INI-Datei, „Contoso.xml“ eine Bidi-Erweiterungsdatei und „Contoso.dll“ eine angepasste Komponente. Weitere Informationen zu Drucker-INI-Dateien, Bidi-Erweiterungsdateien und angepassten Komponenten finden Sie unter Installieren angepasster Treiberkomponenten und Bidirektionales Kommunikationsschema.

Point-and-Print-Vorgänge installieren sowohl die Treiberdateien als auch die treiberabhängigen Dateien auf dem Client.

Für jedes Druckermodell können maximal 64 abhängige Dateien angegeben werden.

Bidirektionales Kommunikationsschema

INF-ControlFlags-Abschnitt

Installieren angepasster Treiberkomponenten

Point-and-Print

Drucker-INF-Datei-Installationsabschnitt

V4-Treibermanifest