Função PTOpenProviderEx (prntvpt.h)

Abre uma instância de um provedor de tíquete de impressão.

Sintaxe

HRESULT PTOpenProviderEx(
  [in]  PCWSTR      pszPrinterName,
        DWORD       dwMaxVersion,
        DWORD       dwPrefVersion,
  [out] HPTPROVIDER *phProvider,
  [out] DWORD       *pUsedVersion
);

Parâmetros

[in] pszPrinterName

Um ponteiro para o nome completo de uma fila de impressão.

dwMaxVersion

A versão mais recente do Esquema de Impressão compatível com o chamador.

dwPrefVersion

A versão do Esquema de Impressão solicitada pelo chamador.

[out] phProvider

Um ponteiro para um identificador para o provedor.

[out] pUsedVersion

Um ponteiro para a versão do Esquema de Impressão que o provedor de tíquete de impressão usará.

Retornar valor

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

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 de 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.
 
O parâmetro pszPrinterName deve ser o nome completo, não o nome truncado, pois pode aparecer em um DEVMODE.

A primeira versão do Esquema de Impressão foi lançada com o Windows Vista e é a versão 1. Se o provedor de tíquete de impressão não der suporte a prefVersion, PTOpenProviderEx abrirá com êxito um identificador e retornará uma versão anterior no usedVersion.

Para evitar um vazamento de recursos, phProvider deve ser fechado com PTCloseProvider.

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

Confira também

Esquema de Impressão

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

Impressão