FlushPrinter-Funktion

Die FlushPrinter-Funktion sendet einen Puffer an den Drucker, um ihn aus einem vorübergehenden Zustand zu löschen.

Syntax

BOOL FlushPrinter(
  _In_  HANDLE  hPrinter,
  _In_  LPVOID  pBuf,
  _In_  DWORD   cbBuf,
  _Out_ LPDWORD pcWritten,
  _In_  DWORD   cSleep
);

Parameter

hPrinter [ In]

Ein Handle für das Druckerobjekt. Dies sollte dasselbe Handle sein, das in einem vorherigen WritePrinter-Aufruf vom Druckertreiber verwendet wurde.

pBuf [ In]

Ein Zeiger auf ein Bytearray, das die auf den Drucker zu schreibenden Daten enthält.

cbBuf [ In]

Die Größe des Arrays in Bytes, auf das pBuf zeigt.

pcWritten [ out]

Ein Zeiger auf einen Wert, der die Anzahl der Bytes von Daten empfängt, die auf den Drucker geschrieben wurden.

cSleep [ In]

Die Zeit in Millisekunden, für die die E/A-Leitung zum Druckerport im Leerlauf bleiben soll.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.

Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null.

Hinweise

Hinweis

Dies ist eine blockierende oder synchrone Funktion, die möglicherweise nicht sofort zurückkehrt. Wie schnell diese Funktion zurückgegeben wird, hängt von Laufzeitfaktoren wie Netzwerkstatus, Druckerserverkonfiguration und Implementierungsfaktoren des Druckertreibers ab, die beim Schreiben einer Anwendung schwer vorherzusagen sind. Das Aufrufen dieser Funktion aus einem Thread, der die Interaktion mit der Benutzeroberfläche verwaltet, könnte dazu kommen, dass die Anwendung nicht reagiert.

FlushPrinter sollte nur aufgerufen werden, wenn WritePrinter fehlgeschlagen ist und der Drucker in einem vorübergehenden Zustand ist. Beispielsweise kann der Drucker in einen vorübergehenden Zustand kommen, wenn der Auftrag abgebrochen wird und der Druckertreiber einige Rohdaten teilweise an den Drucker gesendet hat.

FlushPrinter kann auch einen Leerlaufzeitraum angeben, in dem der Druckspooler keine Aufträge am entsprechenden Druckerport geplant.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows 2000 Server [nur Desktop-Apps]
Header
Winspool.h (include Windows.h)
Bibliothek
Winspool.lib
DLL
Winspool.drv

Siehe auch

Drucken

Druckspooler-API-Funktionen

WritePrinter