Compartilhar via


Função GetPrinterDriverPackagePath

Recupera o caminho para o pacote de driver de impressora especificado em um servidor de impressão.

Sintaxe

HRESULT GetPrinterDriverPackagePath(
  _In_    LPCTSTR pszServer,
  _In_    LPCTSTR pszEnvironment,
  _In_    LPCTSTR pszLanguage,
  _In_    LPCTSTR pszPackageID,
  _Inout_ LPTSTR  pszDriverPackageCab,
  _In_    DWORD   cchDriverPackageCab,
  _Out_   LPDWORD pcchRequiredSize
);

Parâmetros

pszServer [in]

Um ponteiro para uma cadeia de caracteres constante terminada em nulo que especifica o nome do servidor de impressão. Use NULL para o computador local.

pszEnvironment [in]

Um ponteiro para uma cadeia de caracteres constante terminada em nulo que especifica a arquitetura do processador (por exemplo, Windows NT x86). Isso pode ser NULL.

pszLanguage [in]

Um ponteiro para uma cadeia de caracteres constante terminada em nulo que especifica o idioma da Interface do Usuário Multilíngue para o driver que está sendo instalado. Isso pode ser NULL.

pszPackageID [in]

Um ponteiro para uma cadeia de caracteres constante terminada em nulo que especifica a ID do pacote de driver.

pszDriverPackageCab [in, out]

Um ponteiro para uma cadeia de caracteres terminada em nulo que especifica o caminho para o arquivo de gabinete do pacote de driver. Isso pode ser NULL. Consulte Observações.

cchDriverPackageCab [in]

O tamanho, em caracteres, do buffer pszDriverPackageCab . Isso pode ser NULL.

pcchRequiredSize [out]

Um ponteiro para o tamanho necessário do buffer pszDriverPackageCab .

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.

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

Comentários

Observação

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 fatores de implementação de driver de impressora que são 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.

Para obter um valor para cchDriverPackageCab, chame a função com NULL como o valor de pszDriverPackageCab. Use o valor retornado em pcchRequiredSize como o valor de cchDriverPackageCab e chame a função novamente.

O pszPackageID normalmente é obtido de uma chamada para GetCorePrinterDrivers.

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte
Windows Server 2008 [somente aplicativos da área de trabalho]
Cabeçalho
Winspool.h (inclua Windows.h)
Biblioteca
Winspool.lib
DLL
Spoolss.dll
Nomes Unicode e ANSI
GetPrinterDriverPackagePathW (Unicode) e GetPrinterDriverPackagePathA (ANSI)

Confira também

Impressão

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