Partager via


FlushPrinter, fonction

La fonction FlushPrinter envoie une mémoire tampon à l’imprimante afin de la supprimer d’un état temporaire.

Syntaxe

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

Paramètres

hPrinter [in]

Handle de l’objet d’imprimante. Il doit s’agir du même handle que celui utilisé par le pilote d’imprimante lors d’un appel précédent de WritePrinter .

pBuf [in]

Pointeur vers un tableau d’octets qui contient les données à écrire dans l’imprimante.

cbBuf [in]

Taille, en octets, du tableau pointé par pBuf.

pcWritten [out]

Pointeur vers une valeur qui reçoit le nombre d’octets de données écrites sur l’imprimante.

cSleep [in]

Durée, en millisecondes, pendant laquelle la ligne d’E/S vers le port de l’imprimante doit rester inactive.

Valeur retournée

Si la fonction réussit, la valeur de retour est différente de zéro.

Si la fonction échoue, la valeur de retour est égale à zéro.

Notes

Notes

Il s’agit d’une fonction bloquante ou synchrone qui peut ne pas être retournée immédiatement. La rapidité avec laquelle cette fonction retourne dépend de facteurs d’exécution tels que l’status réseau, la configuration du serveur d’impression et les facteurs d’implémentation du pilote d’imprimante qui sont difficiles à prédire lors de l’écriture d’une application. L’appel de cette fonction à partir d’un thread qui gère l’interaction avec l’interface utilisateur peut donner l’impression que l’application ne répond pas.

FlushPrinter doit être appelé uniquement en cas d’échec de WritePrinter , laissant l’imprimante dans un état temporaire. Par exemple, l’imprimante peut passer à un état temporaire lorsque le travail est abandonné et que le pilote d’imprimante a partiellement envoyé des données brutes à l’imprimante.

FlushPrinter peut également spécifier une période d’inactivité pendant laquelle le spouleur d’impression ne planifie aucun travail sur le port d’imprimante correspondant.

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge
Windows 2000 Server [applications de bureau uniquement]
En-tête
Winspool.h (inclure Windows.h)
Bibliothèque
Winspool.lib
DLL
Winspool.drv

Voir aussi

Impression

Fonctions API du spouleur d’impression

WritePrinter