Compartilhar via


Função PTConvertDevModeToPrintTicket (prntvpt.h)

Converte uma estrutura DEVMODE em um tíquete de impressão dentro de um IStream.

Sintaxe

HRESULT PTConvertDevModeToPrintTicket(
  [in] HPTPROVIDER       hProvider,
       ULONG             cbDevmode,
  [in] PDEVMODE          pDevmode,
  [in] EPrintTicketScope scope,
       IStream           *pPrintTicket
);

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 .

cbDevmode

O tamanho do DEVMODE em bytes.

[in] pDevmode

Um ponteiro para o 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 no pDevmode que estão fora do escopo especificado não serão incluídas no pPrintTicket. Consulte Observações.

pPrintTicket

Um ponteiro para um IStream com sua posição de busca no início do tíquete de impressão.

Valor retornado

Se a operação for bem-sucedida, o valor retornado será S_OK, caso contrário, o HRESULT conterá um código de erro.

Se hProvider foi aberto em um thread diferente, o HRESULT será E_INVALIDARG.

Para obter mais informações sobre códigos de erro do COM, confira Tratamento de erros.

Comentários

Nota Essa é uma função de bloqueio ou síncrona e pode não retornar imediatamente. A rapidez com que essa função retorna depende de fatores de tempo de execução, como status de rede, configuração do servidor de impressão e implementação do driver de impressora— fatores difíceis de prever ao escrever um aplicativo. Chamar essa função de um thread que gerencia a interação com a interface do usuário pode fazer com que o aplicativo pareça não responder.
 
hProvider deve ser um identificador aberto no mesmo thread que o thread no qual ele é usado para essa função.

Se o pDevmode apontar para uma impressora diferente, suas configurações poderão ser perdidas e substituídas por padrões.

As configurações no pDevmode que estão fora do escopo não estão incluídas no pPrintTicket. Por exemplo, se o escopo for uma única página, as configurações de todo o trabalho e as configurações de todo o documento não serão incluídas. Um escopo de trabalho inclui escopo de documento e escopo de página. Um escopo de documento inclui o escopo da página.

PTConvertDevModeToPrintTicket grava o tíquete de impressão no IStream referenciado por pPrintTicket começando no ponto de busca atual do fluxo. Depois que PTConvertDevModeToPrintTicket retornar, o chamador deverá redefinir o ponto de busca para o ponto de busca inicial para ler o tíquete de impressão retornado pela função.

Requisitos

   
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

Confira também

Esquema de Impressão

Funções da API do Spooler de impressão

Impressão