Função PTConvertPrintTicketToDevMode (prntvpt.h)
Converte um tíquete de impressão em uma estrutura DEVMODE .
Sintaxe
HRESULT PTConvertPrintTicketToDevMode(
[in] HPTPROVIDER hProvider,
[in] IStream *pPrintTicket,
EDefaultDevmodeType baseDevmodeType,
[in] EPrintTicketScope scope,
[out] ULONG *pcbDevmode,
[out] PDEVMODE *ppDevmode,
[out] BSTR *pbstrErrorMessage
);
Parâmetros
[in] hProvider
Um identificador para um provedor de tíquete de impressão aberto. Esse identificador é retornado pela função PTOpenProvider ou PTOpenProviderEx .
[in] pPrintTicket
Um ponteiro para um IStream com sua posição de busca no início do tíquete de impressão.
baseDevmodeType
Um valor que indica se o DEVMODE padrão do usuário ou o DEVMODE padrão da fila de impressão é usado para fornecer valores para a saída DEVMODE quando pPrintTicket não especifica todas as configurações possíveis para um DEVMODE.
[in] scope
Um valor que especifica o escopo de pPrintTicket. Esse valor pode especificar uma única página, um documento inteiro ou todos os documentos no trabalho de impressão. As configurações em pPrintTicket que estão fora do escopo especificado são ignoradas. Consulte Observações.
[out] pcbDevmode
Um ponteiro para o tamanho do DEVMODE em bytes.
[out] ppDevmode
Um ponteiro para o DEVMODE recém-criado.
[out] pbstrErrorMessage
Um ponteiro para uma cadeia de caracteres que especifica o que, se alguma coisa, é inválido sobre pPrintTicket. Se for válido, isso será NULL.
Retornar valor
Se a operação for bem-sucedida, o valor retornado será S_OK.
Se hProvider foi aberto em um thread diferente, o HRESULT será E_INVALIDARG.
Se pPrintTicket for inválido, o HRESULT será E_PRINTTICKET_FORMAT.
Caso contrário, algum outro código de erro será retornado no HRESULT. Para obter mais informações sobre códigos de erro do COM, confira Tratamento de erros.
Comentários
Se baseDevmodeType for kUserDefaultDevmode, mas o padrão do usuário não estiver disponível, o padrão do dispositivo será usado.
O DEVMODE retornado pode ser internamente inconsistente ou entrar em conflito com as configurações da impressora rígida, embora cada configuração dentro dela seja viável individualmente. Por exemplo, se a impressora der suporte a um duplexer opcional, mas o pPrintTicket chamar duplexing, o DEVMODE retornado também chamará para duplexing, mesmo se o duplexer não estiver instalado. Use DocumentProperties para corrigir o DEVMODE retornado.
O buffer no ppDevmode retornado deve ser liberado com PTReleaseMemory.
Os valores de pPrintTicket que estão fora do escopo são ignorados. Por exemplo, se o escopo for apenas uma única página, as configurações de todo o trabalho e as configurações de todo o documento serão ignoradas. O escopo do trabalho inclui o escopo do documento e o escopo da página. O escopo do documento inclui o escopo da página.
Se pbstrErrorMessage não for NULL quando a função retornar, o chamador deverá liberar a cadeia de caracteres com SysFreeString.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows XP [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2003 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | prntvpt.h |
Biblioteca | Prntvpt.lib |
DLL | Prntvpt.dll |