Função EngWritePrinter (winddi.h)

A função EngWritePrinter permite que as DLLs de gráficos de impressora enviem um fluxo de dados para o hardware da impressora.

Sintaxe

ENGAPI BOOL EngWritePrinter(
  [in]  HANDLE  hPrinter,
  [in]  LPVOID  pBuf,
  [in]  DWORD   cbBuf,
  [out] LPDWORD pcWritten
);

Parâmetros

[in] hPrinter

Identificador fornecido pelo chamador para a impressora. Esse deve ser o identificador recebido como o valor do parâmetro hDriver da função DrvEnablePDEV.

[in] pBuf

Ponteiro fornecido pelo chamador para um buffer que contém um fluxo de bytes a ser enviado para a impressora.

[in] cbBuf

Especifica o número de bytes fornecido pelo chamador contido no buffer apontado pelo pBuf.

[out] pcWritten

Ponteiro fornecido pelo chamador para um local DWORD que recebe o número de bytes realmente gravados na impressora.

Retornar valor

Se a operação for bem-sucedida, a função retornará TRUE; caso contrário, retornará FALSE.

Comentários

As DLLs de gráficos de impressora chamam EngWritePrinter para enviar fluxos de dados (sequências de controle ou dados de imagem) para o spooler de impressão, que, por sua vez, envia os dados para o hardware da impressora chamando o monitor de impressão apropriado. A função retorna depois que o spooler recebe os dados.

O buffer apontado pelo pBuf não pode estar na memória do usuário; ou seja, o pBuf não pode apontar para a memória alocada por EngCreateBitmap com o sinalizador BMF_USERMEM definido ou por EngAllocUserMem.

Para obter informações adicionais sobre como chamar EngWritePrinter, consulte Renderizando um trabalho de impressão.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível no Windows 2000 e versões posteriores dos sistemas operacionais Windows.
Plataforma de Destino Universal
Cabeçalho winddi.h (inclua Winddi.h)
Biblioteca Win32k.lib
DLL Win32k.sys

Confira também

DrvEnablePDEV

EngAllocUserMem

EngCreateBitmap