Compartilhar via


Método IPrintOemPrintTicketProvider::ConvertPrintTicketToDevMode (prcomoem.h)

O método IPrintOemPrintTicketProvider::ConvertPrintTicketToDevMode converte um tíquete de impressão em uma estrutura DEVMODEW .

Sintaxe

HRESULT ConvertPrintTicketToDevMode(
  [in]      IXMLDOMDocument2 *pPrintTicket,
  [in]      ULONG            cbDevmode,
  [in, out] PDEVMODE         pDevmode,
  [in]      ULONG            cbDrvPrivateSize,
  [in]      PVOID            pPrivateDevmode
);

Parâmetros

[in] pPrintTicket

Um ponteiro para o tíquete de impressão de entrada.

[in] cbDevmode

O tamanho, em bytes, da estrutura DEVMODEW de entrada. Esse tamanho inclui as seções pública e privada da estrutura DEVMODEW.

[in, out] pDevmode

Um ponteiro para a estrutura DEVMODEW de entrada. Quando IPrintOemPrintTicketProvider::ConvertPrintTicketToDevMode retornar, a estrutura DEVMODEW privada do plug-in conterá informações obtidas do tíquete de impressão.

[in] cbDrvPrivateSize

O tamanho, em bytes, da estrutura DEVMODEW privada do plug-in.

[in] pPrivateDevmode

Um ponteiro para a estrutura DEVMODEW privada do plug-in.

Retornar valor

IPrintOemPrintTicketProvider::ConvertPrintTicketToDevMode deverá retornar S_OK se a operação for bem-sucedida. Caso contrário, esse método deve retornar um código de erro COM padrão.

Comentários

O driver principal chama o método IPrintOemPrintTicketProvider::ConvertPrintTicketToDevMode antes de executar sua parte da conversão de um tíquete de impressão em uma estrutura DEVMODEW . Na chamada para esse método, o driver principal passa um tíquete de impressão de entrada totalmente preenchido e uma estrutura DEVMODEW definida como valores padrão. Na conversão, o plug-in deve desfazer as alterações feitas no tíquete de impressão durante a conversão anterior de uma estrutura DEVMODEW em um tíquete de impressão. Se, durante essa conversão anterior, o plug-in moveu um recurso de um namespace privado para o namespace público, o plug-in deverá restaurar o recurso para o namespace privado em um formato adequado para o driver principal, ou seja, o formato no qual o driver principal havia colocado anteriormente o recurso no tíquete de impressão que foi fornecido ao plug-in no IPrintOemPrintTicketProvider:: Método ConvertDevModeToPrintTicket . Essa restauração é necessária para que o driver principal possa reconhecer o recurso no tíquete de impressão e refletir suas configurações em parte privada da estrutura DEVMODEW do driver principal enquanto o driver principal executa sua parte da conversão tíquete de impressão para DEVMODEW.

Antes que o sistema converta um tíquete de impressão de volta em uma estrutura DEVMODEW , ele primeiro carrega a estrutura DEVMODEW padrão. Em seguida, o sistema chama o método IPrintOemPrintTicketProvider::BindPrinter do provedor. Esse método deve ler todas as configurações compatíveis com o tíquete de impressão e preencher essas configurações na estrutura DEVMODEW. Observe que nem todos os recursos necessariamente serão representados e que, muitas vezes, as instâncias de opção presentes podem não conter todas as instâncias de Propriedade Pontuada que o provedor normalmente preencheria. Se o provedor fizer alterações nas configurações preenchidas pelo sistema durante a conversão do tíquete de impressão para DEVMODEW, o provedor deverá executar o inverso dessa alteração no método IPrintOemPrintTicketProvider::ConvertPrintTicketToDevMode . Depois que o provedor retorna, o sistema substitui todas as configurações de DEVMODEW públicas representadas no tíquete de impressão, mas que não são explicitamente desabilitadas pelo provedor.

Requisitos

Requisito Valor
Plataforma de Destino Área de Trabalho
Cabeçalho prcomoem.h (inclua Prcomoem.h)

Confira também

IPrintOemPrintTicketProvider

IPrintOemPrintTicketProvider::ConvertDevModeToPrintTicket