Freigeben über


Von Druckanbietern definierte Funktionen

Warnung

Ab Windows 10 sind die APIs, die Druckanbieter von Drittanbietern unterstützen, veraltet. Microsoft empfiehlt keine Investitionen in Druckdienstleister von Drittanbietern. Bei Windows 8 und neueren Produkten, bei denen das v4-Drucktreibermodell verfügbar ist, können Druckanbieter von Drittanbietern möglicherweise keine Warteschlangen erstellen oder verwalten, die v4-Drucktreiber verwenden.

In diesem Thema werden alle Funktionen aufgelistet, die ein Druckanbieter bereitstellen kann. Die meisten dieser Funktionen werden in der Microsoft Windows SDK-Dokumentation beschrieben. Wenn die Funktion im Windows Driver Kit (WDK) beschrieben wird, stellt der Funktionsname einen Link zur zugeordneten Referenzseite bereit.

Alle Druckanbieter müssen Zeiger für alle aufgeführten Funktionen bereitstellen. Die meisten vom Anbieter bereitgestellten Druckanbieter sind jedoch "Teilanbieter", die viele der von den Funktionen definierten Vorgänge nicht unterstützen müssen. Daher können viele der Funktionszeiger NULL sein. Weitere Informationen zu Teildruckanbietern finden Sie unter Schreiben eines Netzwerkdruckanbieters.

In den folgenden Funktionslisten werden Funktionen, die unterstützt werden müssen, als "Erforderlich" bezeichnet.

Alle Druckanbieter müssen die Initialisierungsfunktion InitializePrintProvidor exportieren. Zeiger auf alle anderen Funktionen müssen in einer PRINTPROVIDOR-Struktur bereitgestellt werden. (Beachten Sie, dass diese beiden Namen falsch geschrieben sind, aber mit den Namen konsistent sind, die in der Headerdatei Winsplp.h angezeigt werden.)

Funktionen werden in Gruppen unterteilt und in den folgenden Abschnitten vorgestellt:

  • Initialisierungsfunktion

  • Verwaltungsfunktionen für Druckwarteschlangen

  • Verwaltungsfunktionen für Druckertreiber

  • Druckauftragserstellungsfunktionen

  • Druckauftragsplanungsfunktionen

  • Formularverwaltungsfunktionen

  • Verwaltungsfunktionen für Druckprozessoren

  • Verwaltungsfunktionen des Druckmonitors

  • Portverwaltungsfunktionen

  • Registrierungsverwaltungsfunktionen

  • Andere Funktionen

Initialisierungsfunktion

Funktion BESCHREIBUNG
InitializePrintProvidor (erforderlich) Initialisiert den Druckanbieter und gibt Zeiger auf die angegebenen Funktionen zurück.
Funktion BESCHREIBUNG
AddPrinter Fügt der Liste der vom Druckanbieter verwalteten Druckwarteschlangen eine Druckwarteschlange hinzu und ordnet der Druckwarteschlange einen Druckprozessor zu.
AddPrinterConnection Erstellt eine Verbindung mit der angegebenen Druckwarteschlange.
ClosePrinter (erforderlich) Deaktiviert den Aufruferzugriff auf eine angegebene Druckwarteschlange.
DeletePrinter Löscht eine Druckwarteschlange aus der Liste der vom Druckanbieter verwalteten.
DeletePrinterConnection Entfernt eine Verbindung mit der angegebenen Druckwarteschlange.
EnumPrinters (erforderlich) Listet die Liste der Druckwarteschlangen auf, die derzeit vom Druckanbieter verwaltet werden.
FindClosePrinterChangeNotification Deaktiviert Druckeränderungsbenachrichtigungen, die von FindFirstPrinterChangeNotification aktiviert wurden.
FindFirstPrinterChangeNotification Gibt ein Handle an ein Warteobjekt zurück, das der Aufrufer verwenden kann, um auf angegebene Druckerereignisse zu warten.
GetPrinter (erforderlich) Gibt aktuelle Parameterwerte für eine angegebene Druckwarteschlange zurück.
OpenPrinter (erforderlich) Aktiviert den Aufruferzugriff auf eine angegebene Druckwarteschlange.
RefreshPrinterChangeNotification Wird vom Router aufgerufen, wenn der Client FindNextPrinterChangeNotification mit festgelegtem PRINTER_NOTIFY_OPTIONS_REFRESH-Flag aufruft.
ResetPrinter Ändert den Datentyp oder die DEVMODEW-Struktur einer Druckwarteschlange.
SetPrinter (erforderlich) Legt Parameter für eine angegebene Druckwarteschlange fest.
WaitForPrinterChange Veraltet.

Verwaltungsfunktionen für Druckertreiber

Funktion BESCHREIBUNG
AddPrinterDriver Fügt einem angegebenen Server die Treiberdateien eines angegebenen Druckers hinzu.
AddPrinterDriverEx Identisch mit AddPrinterDriver, mit zusätzlichen Parametern.
DeletePrinterDriver Löscht den Zugriff auf die Treiberdateien eines angegebenen Druckers auf einem angegebenen Server.
DeletePrinterDriverEx Identisch mit DeletePrinterDriver, mit zusätzlichen Parametern.
EnumPrinterDrivers Gibt eine Liste der Druckertreiber zurück, die einem angegebenen Server durch Aufrufen von AddPrinterDriver oder AddPrinterDriverEx hinzugefügt wurden.
GetPrinterDriver Gibt Informationen zu einem Druckertreiber zurück, die der Aufrufer dann an AddPrinterDriver übergeben kann. (Die zurückgegebenen Informationen werden in der Regel aus einer INF-Datei abgerufen.)
[GetPrinterDriverEx Identisch mit GetPrinterDriver, mit zusätzlichen Parametern.
GetPrinterDriverDirectory Gibt den Namen des Druckertreiberverzeichnisses des Servers zurück.
Funktion BESCHREIBUNG
AbortPrinter (erforderlich) Versucht, den aktuellen Auftrag aus der angegebenen Druckwarteschlange zu löschen.
AddJob (erforderlich) Gibt einen Auftragsbezeichner und einen Spooldateipfad zurück. Der Aufrufer verwendet CreateFile und WriteFile , um Daten an die Spooldatei zu senden.
EndDocPrinter (erforderlich) Führt Auftragsabschlussvorgänge aus.
EndPagePrinter Führt Seitenabschlussvorgänge aus.
ReadPrinter Ruft status Informationen von einem bidirektionalen Drucker ab.
ScheduleJob (Erforderlich) Informiert den Anbieter darüber, dass ein angegebener Auftrag geplant werden kann. Der Auftrag wird durch einen Auftragsbezeichner angegeben, der zuvor von AddJob zurückgegeben wurde.
StartDocPrinter (Erforderlich) Bereitet den Druckanbieter darauf vor, mit dem Spooling eines Druckauftrags zu beginnen.
StartPagePrinter Bereitet den Druckanbieter auf den Empfang einer Druckauftragsseite vor.
WritePrinter (Erforderlich) Empfängt einen Teil des Datenstroms des Druckauftrags.

Hinweis

Der AddJob... Die ScheduleJob-Sequenz ist eine Alternative zum StartDocPrinter... EndDocPrinter-Sequenz .

Funktion BESCHREIBUNG
EnumJobs (Erforderlich) Gibt eine Liste geplanter Druckaufträge zurück.
GetJob (Erforderlich) Gibt Auftragsparameter zurück.
SetJob (Erforderlich) Ein Druckauftrag wird abgebrochen, angehalten, fortgesetzt oder neu gestartet oder Auftragsparameter festgelegt.

Formularverwaltungsfunktionen

Funktion BESCHREIBUNG
AddForm Fügt der Liste der für einen angegebenen Drucker verfügbaren Formular ein angegebenes Formular hinzu.
DeleteForm Entfernt ein angegebenes Formular aus der Liste der für einen angegebenen Drucker verfügbaren Formular.
EnumForms Gibt eine Liste von Formularen zurück, die für einen angegebenen Drucker verfügbar sind.
GetForm Gibt Merkmale eines angegebenen Formulars zurück.
SetForm Ändert Die Merkmale eines angegebenen Formulars.
Funktion BESCHREIBUNG
AddPrintProcessor Installiert einen Druckprozessor auf dem angegebenen Server und fügt ihn der Liste derJenigen hinzu, die der Druckanbieter aufrufen kann.
DeletePrintProcessor Löscht einen Druckprozessor aus der Liste derjenigen, die der Druckanbieter aufrufen kann.
EnumPrintProcessorDataTypes Gibt eine Liste der Datentypen zurück, die von den Druckprozessoren unterstützt werden, die vom Druckanbieter aufgerufen werden können.
EnumPrintProcessors Gibt die Liste der Druckprozessoren zurück, die der Druckanbieter aufrufen kann.
GetPrintProcessorDirectory Gibt den Verzeichnispfad zurück, in dem Druckprozessordateien gespeichert werden müssen.
Funktion BESCHREIBUNG
AddMonitor Fügt der Liste derJenigen, die der Druckanbieter aufrufen kann, einen Druckmonitor hinzu.
DeleteMonitor Löscht einen Druckmonitor aus der Liste derjenigen, die der Druckanbieter aufrufen kann.
EnumMonitors Gibt die Liste der Druckmonitore zurück, die der Druckanbieter aufrufen kann.

Portverwaltungsfunktionen

Funktion BESCHREIBUNG
AddPort Fügt der Liste der verfügbaren Einen Druckerport hinzu, in der Regel durch Aufrufen der AddPortUI-Funktion des angegebenen Portmonitors.
AddPortEx(/previous-versions/ff545025(v%3dvs.85)) Identisch mit AddPort, mit zusätzlichen Parametern.
ConfigurePort (erforderlich) Konfiguriert einen Druckerport, in der Regel durch Aufrufen der ConfigurePortUI-Funktion des angegebenen Portmonitors.
DeletePort (erforderlich) Löscht einen Druckerport aus der Liste der verfügbaren Ports, in der Regel durch Aufrufen der DeletePortUI-Funktion des angegebenen Portmonitors.
EnumPorts (Erforderlich) Gibt eine Liste der verfügbaren Druckerports zurück.
SetPort Legt Parameter für einen angegebenen Druckerport fest.

Registrierungsverwaltungsfunktionen

Funktion BESCHREIBUNG
DeletePrinterData Löscht den Wert, der derzeit einem angegebenen Wertnamen unter dem PrinterDriverData-Schlüssel des angegebenen Druckers zugewiesen ist.
DeletePrinterDataEx Identisch mit DeletePrinterData, mit zusätzlichen Parametern.
DeletePrinterKey Löscht einen angegebenen Schlüssel und die zugehörigen Unterschlüssel, wenn sie derzeit in der Registrierung unter dem PrinterDriverData-Schlüssel des angegebenen Druckers gespeichert sind.
EnumPrinterData Gibt alle Wertnamen und aktuell zugewiesenen Werte zurück, die in der Registrierung unter dem PrinterDriverData-Schlüssel des angegebenen Druckers gespeichert sind.
EnumPrinterDataEx Identisch mit EnumPrinterData, mit zusätzlichen Parametern.
EnumPrinterKey Gibt eine Liste von Unterschlüsseln zurück, die derzeit unter einem angegebenen Schlüsselnamen in der Registrierung enthalten sind.
GetPrinterData Gibt den Wert zurück, der derzeit einem angegebenen Wertnamen zugewiesen ist, der in der Registrierung unter dem PrinterDriverData-Schlüssel des angegebenen Druckers gespeichert wird.
GetPrinterDataEx Identisch mit GetPrinterData, mit zusätzlichen Parametern.
SetPrinterData Speichert einen angegebenen Wertnamen und Wert in der Registrierung unter dem PrinterDriverData-Schlüssel des angegebenen Druckers.
SetPrinterDataEx Identisch mit SetPrinterData, mit zusätzlichen Parametern.

Andere Funktionen

Funktion BESCHREIBUNG
XcvData Stellt einen Kommunikationspfad zwischen einer Portmonitor-UI-DLL und einer Portmonitorserver-DLL bereit.