Função StartPagePrinter

A função StartPagePrinter notifica o spooler de que uma página está prestes a ser impressa na impressora especificada.

Sintaxe

BOOL StartPagePrinter(
  _In_ HANDLE hPrinter
);

Parâmetros

hPrinter [in]

Manipule para uma impressora. 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 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.

Exemplos

Para obter um programa de exemplo que usa essa função, consulte How To: Print Using the GDI Print API( Como imprimir usando a API de impressão GDI).

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

OpenPrinter

StartDocPrinter

StartPagePrinter

WritePrinter