Função EndDocPrinter

A função EndDocPrinter encerra um trabalho de impressão para a impressora especificada.

Sintaxe

BOOL EndDocPrinter(
  _In_ HANDLE hPrinter
);

Parâmetros

hPrinter [in]

Manipule para uma impressora para a qual o trabalho de impressão deve ser encerrado. Use a função OpenPrinter ou AddPrinter para recuperar um identificador de impressora.

Valor retornado

Se a função for bem-sucedida, o valor retornado será um valor 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.

A função EndDocPrinter retornará um erro se o trabalho de impressão não tiver sido iniciado chamando a função StartDocPrinter .

A sequência de um trabalho de impressão é a seguinte:

  1. Para iniciar um trabalho de impressão, chame StartDocPrinter.
  2. Para iniciar cada página, chame StartPagePrinter.
  3. Para gravar dados em uma página, chame WritePrinter.
  4. Para encerrar cada página, chame EndPagePrinter.
  5. Repita 2, 3 e 4 para quantas páginas forem necessárias.
  6. Para encerrar o trabalho de impressão, chame EndDocPrinter.

Quando uma página em um arquivo com spool excede aproximadamente 350 MB, ela pode falhar ao imprimir e não enviar uma mensagem de erro. Por exemplo, isso pode ocorrer ao imprimir arquivos EMF grandes. O limite de tamanho da página depende de muitos fatores, incluindo a quantidade de memória virtual disponível, a quantidade de memória alocada por processos de chamada e a quantidade de fragmentação no heap de processo.

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
Spoolss.dll

Confira também

Impressão

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

EndDocPrinter

EndPagePrinter

StartDocPrinter

StartPagePrinter

WritePrinter