Share via


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 bei einem früheren WritePrinter-Aufruf vom Druckertreiber verwendet wurde.

pBuf [in]

Ein Zeiger auf ein Bytearray, das die Daten enthält, die auf den Drucker geschrieben werden sollen.

cbBuf [in]

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

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 Druckeranschluss im Leerlauf gehalten werden soll.

Rückgabewert

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

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

Bemerkungen

Hinweis

Dies ist eine blockierende oder synchrone Funktion, die möglicherweise nicht sofort zurückgegeben wird. 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. Das Aufrufen dieser Funktion aus einem Thread, der die Interaktion mit der Benutzeroberfläche verwaltet, könnte dazu führen, dass die Anwendung nicht mehr reagiert.

FlushPrinter sollte nur aufgerufen werden, wenn WritePrinter fehlgeschlagen ist und der Drucker in einem vorübergehenden Zustand bleibt. Beispielsweise könnte der Drucker in einen vorübergehenden Zustand versetzt werden, wenn der Auftrag abgebrochen wird und der Druckertreiber teilweise rohe Daten an den Drucker gesendet hat.

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

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 (Einschließen von Windows.h)
Bibliothek
Winspool.lib
DLL
Winspool.drv

Siehe auch

Drucken

Druckspooler-API-Funktionen

WritePrinter