Compartilhar via


Função AddPrinterDriver

A função AddPrinterDriver instala um driver de impressora local ou remoto e associa os arquivos de configuração, dados e driver.

Para obter mais flexibilidade na instalação ou atualização de drivers de impressora, use a função AddPrinterDriverEx porque permite atualização estrita, downgrade estrito, cópia somente de arquivos mais recentes e cópia de todos os arquivos (independentemente dos carimbos de data/hora do arquivo).

Observação

Não é mais recomendável instalar um driver de impressora sem um pacote de driver. Em vez disso , use InstallPrinterDriverFromPackage .

Sintaxe

BOOL AddPrinterDriver(
  _In_ LPTSTR pName,
  _In_ DWORD  Level,
  _In_ LPBYTE pDriverInfo
);

Parâmetros

pName [in]

Um ponteiro para uma cadeia de caracteres terminada em nulo que especifica o nome do servidor no qual o driver deve ser instalado.

Se pName for NULL, o driver será instalado localmente.

Nível [in]

A versão da estrutura para a qual pDriverInfo aponta.

Esse valor pode ser 2, 3, 4, 6 ou 8.

pDriverInfo [in]

Um ponteiro para uma estrutura que contém informações de driver de impressora. Isso depende do valor de Level.

Valor Estrutura da unidade da impressora
2 DRIVER_INFO_2
3 DRIVER_INFO_3
4 DRIVER_INFO_4
6 DRIVER_INFO_6
8 DRIVER_INFO_8

Se o membro pEnvironment da estrutura apontada por pDriverInfo for NULL, o ambiente atual do chamador/cliente (não do destino/servidor) será usado.

Valor retornado

Se a função for bem-sucedida, o valor retornado será um valor diferente de zero.

Se a função falhar, o valor retornado será zero.

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.

O chamador deve ter o SeLoadDriverPrivilege.

Antes que um aplicativo chame a função AddPrinterDriver , todos os arquivos exigidos pelo driver devem ser copiados para o diretório printer-driver do sistema. Um aplicativo pode recuperar o nome desse diretório chamando a função GetPrinterDriverDirectory .

Um aplicativo pode determinar quais drivers de impressora estão instalados no momento chamando a função EnumPrinterDrivers .

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte
Windows 2000 Server [somente aplicativos da área de trabalho]
Cabeçalho
Winspool.h (inclua Windows.h)
Biblioteca
Winspool.lib
DLL
Winspool.drv
Nomes Unicode e ANSI
AddPrinterDriverW (Unicode) e AddPrinterDriverA (ANSI)

Confira também

Impressão

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

AddPrinterDriverEx

DRIVER_INFO_2

DRIVER_INFO_3

DRIVER_INFO_4

DRIVER_INFO_6

EnumPrinterDrivers

GetPrinterDriverDirectory