StartPagePrinter-Funktion
Die StartPagePrinter-Funktion benachrichtigt den Spooler, dass eine Seite auf dem angegebenen Drucker gedruckt werden soll.
Syntax
BOOL StartPagePrinter(
_In_ HANDLE hPrinter
);
Parameter
-
hPrinter [in]
-
Handle an einem Drucker. Verwenden Sie die OpenPrinter - oder AddPrinter-Funktion , um einen Druckerhandle abzurufen.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert ein Nichtzero-Wert.
Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null.
Bemerkungen
Hinweis
Dies ist eine blockierende oder synchrone Funktion und wird möglicherweise nicht sofort zurückgegeben. Wie schnell diese Funktion zurückgibt, hängt von Laufzeitfaktoren wie Netzwerk-status, Druckserverkonfiguration und Druckertreiberimplementierungsfaktoren ab, die beim Schreiben einer Anwendung schwer vorherzusagen sind. Wenn Sie diese Funktion über einen Thread aufrufen, der die Interaktion mit der Benutzeroberfläche verwaltet, kann die Anwendung nicht reagieren.
Die Reihenfolge für einen Druckauftrag lautet wie folgt:
- Um einen Druckauftrag zu starten, rufen Sie StartDocPrinter auf.
- Rufen Sie StartPagePrinter auf, um jede Seite zu beginnen.
- Um Daten auf eine Seite zu schreiben, rufen Sie WritePrinter auf.
- Um jede Seite zu beenden, rufen Sie EndPagePrinter auf.
- Wiederholen Sie 2, 3 und 4 für so viele Seiten wie nötig.
- Um den Druckauftrag zu beenden, rufen Sie EndDocPrinter auf.
Wenn eine Seite in einer Spooldatei ungefähr 350 MB überschreitet, kann sie nicht drucken und keine Fehlermeldung senden. Dies kann beispielsweise beim Drucken großer EMF-Dateien auftreten. Die Begrenzung der Seitengröße hängt von vielen Faktoren ab, einschließlich der Menge des verfügbaren virtuellen Arbeitsspeichers, der Durch aufrufen von Prozessen zugewiesenen Arbeitsspeichermenge und dem Umfang der Fragmentierung im Prozessheap.
Beispiele
Ein Beispielprogramm, das diese Funktion verwendet, finden Sie unter Vorgehensweise: Drucken mithilfe der GDI-Druck-API.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) |
Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) |
Windows 2000 Server [nur Desktop-Apps] |
Header |
|
Bibliothek |
|
DLL |
|