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. |
Verwaltungsfunktionen für Druckwarteschlangen
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. |
Druckauftragserstellungsfunktionen
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 .
Funktionen für die Planung von Druckaufträgen
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. |
Druckprozessorverwaltungsfunktionen
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. |
Verwaltungsfunktionen des Druckmonitors
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. |