Share via


Função FlushPrinter

A função FlushPrinter envia um buffer para a impressora para limpá-lo de um estado transitório.

Sintaxe

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

Parâmetros

hPrinter [in]

Um identificador para o objeto da impressora. Esse deve ser o mesmo identificador usado, em uma chamada anterior do WritePrinter , pelo driver da impressora.

pBuf [in]

Um ponteiro para uma matriz de bytes que contém os dados a serem gravados na impressora.

cbBuf [in]

O tamanho, em bytes, da matriz apontada por pBuf.

pcWritten [out]

Um ponteiro para um valor que recebe o número de bytes de dados que foram gravados na impressora.

cSleep [in]

O tempo, em milissegundos, para o qual a linha de E/S para a porta da impressora deve ser mantida ociosa.

Valor retornado

Se a função for bem-sucedida, o valor retornado será diferente de zero.

Se a função falhar, o valor retornado será zero.

Comentários

Observação

Essa é uma função de bloqueio ou síncrona e pode não retornar imediatamente. A rapidez com que essa função retorna depende de fatores de tempo de execução, como status de rede, configuração do servidor de impressão e fatores de implementação do driver de impressora que são difíceis de prever ao gravar um aplicativo. Chamar essa função de um thread que gerencia a interação com a interface do usuário pode fazer com que o aplicativo pareça não responder.

FlushPrinter só deverá ser chamado se WritePrinter falhar, deixando a impressora em um estado transitório. Por exemplo, a impressora pode entrar em um estado transitório quando o trabalho for anulado e o driver da impressora tiver enviado parcialmente alguns dados brutos para a impressora.

FlushPrinter também pode especificar um período ocioso durante o qual o spooler de impressão não agenda nenhum trabalho para a porta da impressora correspondente.

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte
Windows 2000 Server [somente aplicativos da área de trabalho]
Cabeçalho
Winspool.h (inclua Windows.h)
Biblioteca
Winspool.lib
DLL
Winspool.drv

Confira também

Impressão

Funções da API do Spooler de impressão

WritePrinter