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) |