Compartilhar via


Função DrvStartDoc (winddi.h)

A função DrvStartDoc é chamada pela GDI quando está pronta para começar a enviar um documento para o driver para renderização.

Sintaxe

BOOL DrvStartDoc(
  [in] SURFOBJ *pso,
  [in] LPWSTR  pwszDocName,
  [in] DWORD   dwJobId
);

Parâmetros

[in] pso

Ponteiro fornecido pelo chamador para uma estrutura SURFOBJ .

[in] pwszDocName

Ponteiro fornecido pelo chamador para uma cadeia de caracteres Unicode terminada em NULL especificando o nome do documento a ser impresso.

[in] dwJobId

Número do trabalho de impressão fornecido pelo chamador. Esse valor é retornado à GDI do spooler em uma chamada para StartDocPrinter.

Valor retornado

Se a operação for bem-sucedida, a função deverá retornar TRUE. Caso contrário, ele deverá chamar a função SetLastError do Win32 para definir um código de erro e retornar FALSE.

Comentários

Uma DLL de gráficos de impressora deve fornecer uma função DrvStartDoc . Normalmente, a função é usada para enviar sequências de controle para o hardware da impressora, antes que um documento seja impresso, chamando a função EngWritePrinter da GDI. A função também pode executar operações de inicialização internas específicas do documento para a DLL de gráficos da impressora.

A função DrvStartDoc é chamada no início de um trabalho de impressão e sempre que um aplicativo (como um processador de impressão) chama ResetDC (consulte DrvResetPDEV). Quando a chamada para DrvStartDoc vem de ResetDC, o parâmetro pwszDocName é definido como NULL e o parâmetro dwJobId é definido como zero. Quando a chamada vem de um aplicativo, esses parâmetros são definidos, respectivamente, como o nome do documento e o número do trabalho de impressão.

Como não há uma chamada separada para a DLL de gráficos da impressora quando um trabalho de impressão é iniciado, a função DrvStartDoc também deve enviar sequências de controle para a impressora para inicializar o trabalho, se exigido pela impressora. (Em outras palavras, há um documento por trabalho.)

Requisitos

   
Plataforma de Destino Área de Trabalho
Cabeçalho winddi.h (inclua Winddi.h)

Confira também

DrvEndDoc

DrvResetPDEV

EngWritePrinter