Uso de linha de comandos para instalar/remover/configurar impressoras no Windows

Para um administrador de redes pode ser muito interessante utilizar scripts para instalação/remoção e configuração de perfis de impressoras de forma centralizada. Para isso, é possível utilizar o comando:

rundll32 printui.dll,PrintUIEntry

É possível, ao utilizar este comando, configurar o driver que será utilizado, o tipo padrão de página (A4, Letter), se será impressão frente e verso ou não, enfim, todos os detalhes de configuração das impressoras. Para saber maiores detalhes de como utilizar este comando, escreva:

rundll32 printui.dll,PrintUIEntry /?

Será apresentada a tela a seguir que tem os detalhamentos necessários, e até mesmo com exemplos de como utilizá-lo.

Uso: rundll32 printui.dll,PrintUIEntry [opções] [@arquivodecomandos]
   /um nome de arquivo binário [file]
   /b[nome] nome da impressora base
   /c[nome] nome unc da máquina caso a ação seja em uma máquina remota
   /dl exclui impressora local
   /dn exclui conexão de impressora de rede
   /dd exclui driver de impressora
   /e exibe preferências de impressão
   /f[arquivo] arquivo INF ou de saída
   /F[arquivo] local de um arquivo INF do qual possa depender o arquivo INF especificado com /f
   /ga adiciona conexões de impressora por computador (a conexão será propagada ao usuário após o logon)
   /ge enumera conexões de impressora por computador
   /gd exclui conexões de impressora por computador (a conexão será excluída após o logon)
   /h[arquitetura] arquitetura de driver de um dos seguintes: x86, x64 ou Itanium
   /ia instala o driver de impressora usando arquivo INF
   /id instala o driver da impressora usando o assistente para adicionar driver de impressora
   /if instala a impressora usando o arquivo INF
   /ii instala a impressora usando o assistente para adicionar impressora com um arquivo INF
   /il instala a impressora usando o assistente para adicionar impressora
   /in adiciona uma conexão de impressora de rede
   /ip instala a impressora usando o assistente para instalação de impressora na rede
   /j[provedor] nome do provedor de impressão
   /k imprime página de teste para a impressora especificada, não pode ser usado com comando ao instalar uma impressora
   /l[caminho] caminho de origem do driver de impressora
   /m[modelo] nome do modelo do driver de impressão
   /n[nome] nome da impressora
   /o exibe a fila de impressão
   /p exibe propriedades de impressão
   /q modo silencioso, não exibir mensagens de erro
   /r[porta] nome da porta
   /s exibe propriedades do servidor
   /Ss armazenar as configurações da impressora em um arquivo
   /Sr restaurar as configurações da impressora de um arquivo
   Armazenar ou restaurar os sinalizadores de opção das configurações da impressora que devem ser posicionados no final do comando:
 2 PRINTER_INFO_2
 7 PRINTER_INFO_7
 c Perfil de cores
 d Dados de impressora
 s Descritor de segurança
 g DevMode global
 m Configurações mínimas
 u DevMode do usuário
 r Resolver conflitos de nomes
 f Forçar nome
 p Resolver porta
 i Conflito de nome de driver
   /u usa o driver de impressão existente caso ele já esteja instalado
   /t[#] página de índice inicial, começando em zero
   /v[versão] versão do driver de um dos seguintes: "Tipo 2 - Modo Kernel" ou "Tipo 3 - Modo de Usuário"
   /w solicita um driver ao usuário caso o driver especificado não esteja no arquivo INF
   /y define impressora como padrão
   /Xg obtém configurações da impressora
   /Xs define configurações da impressora
   /z não compartilha esta impressora automaticamente
   /Y não gera um nome de impressora automaticamente
   /K altera o significado de /h para que aceite 2,3,4 para x86, x64 ou Itanium, e /v para que aceite 3 para "Tipo 3 - Modo de Usuário"
   /Z compartilha esta impressora; pode ser usada apenas com a opção /if
   /? ajuda sobre esta mensagem
   @[arquivo] arquivo de argumento de linha de comando
   /Mw[mensagem] mostra uma mensagem de aviso antes de submeter o comando
   /Mw[mensagem] mostra uma mensagem de confirmação antes de confirmar o comando
   /W[flags] especifica sinalizadores e opções para os assistentes
(para adicionar impressoras e drivers de impressora)
 r permite o reinício dos assistentes a partir da última página
   /G[flags] especifica sinalizadores e opções globais
 w suprimir UI de avisos de driver de instalação (modo supersilencioso)

Exemplos:
   Executar as propriedades do servidor:
rundll32 printui.dll,PrintUIEntry /s /t1 /c\\computador
   Executar as propriedades da impressora:
rundll32 printui.dll,PrintUIEntry /p /n\\computador\impressora
   Executar o Assistente para Adicionar Impressora localmente:
rundll32 printui.dll,PrintUIEntry /il
   Executar o Assistente para Adicionar Impressora no \\computador:
rundll32 printui.dll,PrintUIEntry /il /c\\computador
   Executar a exibição de fila:
rundll32 printui.dll,PrintUIEntry /o /n\\computador\impressora
   Executar a instalação do arquivo INF:
rundll32 printui.dll,PrintUIEntry /if /b "Test Printer" /f c:\infpath\infFile.inf /r "lpt1:" /m "Brother DCP-128C"
   Executar a instalação de inf (com dependência de inf). No exemplo, prnbr002.inf depende de ntprint.inf
rundll32 printui.dll, PrintUIEntry /ia /m "Brother DCP-128C" /K /h x64 /v 3 /f "c:\infpath\prnbr002.inf" /F "c:\infpath\ntprint.inf"
   Executar o Assistente para Adicionar Impressora usando inf:
rundll32 printui.dll,PrintUIEntry /ii /f C:\infpath\infFile.inf
   Adicionar a impressora usando driver de impressora da caixa de entrada:
rundll32 printui.dll,PrintUIEntry /if /b "Test Printer" /r "lpt1:" /m "Brother DCP-128C"
   Adicionar conexão de impressora por computador (a conexão será propagada ao usuário após o logon):
rundll32 printui.dll,PrintUIEntry /ga /c\\computador /n\\computador\impressora /j"Serviços de impressão LanMan"
   Excluir conexão de impressora por computador (a conexão será excluída após o logon do usuário):
rundll32 printui.dll,PrintUIEntry /gd /c\\computador /n\\computador\impressora
   Enumerar as conexões de impressora por computador:
rundll32 printui.dll,PrintUIEntry /ge /c\\computador
   Adicionar o driver da impressora usando inf:
rundll32 printui.dll,PrintUIEntry /ia /c\\computador /m "Brother DCP-128C" /h "x86" /v "Type 3 - User Mode" /f c:\infpath\infFile.inf
   Adicionar o driver da impressora usando inf:
rundll32 printui.dll,PrintUIEntry /ia /K /c\\computador /m "Brother DCP-128C" /h "x86" /v 3
   Adicionar o driver de impressora de caixa de entrada:
rundll32 printui.dll,PrintUIEntry /ia /c\\computador /m "Brother DCP-128C" /h "Intel" /v "Type 3 - Kernel Mode"
   Remover o driver de impressora:
rundll32 printui.dll,PrintUIEntry /dd /c\\computador /m "Brother DCP-128C" /h "x86" /v "Type 3 - User Mode"
   Remover o driver de impressora:
rundll32 printui.dll,PrintUIEntry /dd /K /c\\computador /m "Brother DCP-128C" /h "x86" /v 3
   Definir a impressora como padrão: 
rundll32 printui.dll,PrintUIEntry /y /n "printer"
   Definir comentário da impressora:
rundll32 printui.dll,PrintUIEntry /Xs /n "impressora" comentário "Minha impressora"
   Obter configurações de impressora:
rundll32 printui.dll,PrintUIEntry /Xg /n "printer"
   Obter os resultados de salvamento das configurações da impressora em um arquivo:
rundll32 printui.dll,PrintUIEntry /f "results.txt" /Xg /n "printer"
   Definir uso de comando de configurações da impressora:
rundll32 printui.dll,PrintUIEntry /Xs /n "printer" ?
Armazenar todas as configurações da impressora em um arquivo: 
rundll32 printui.dll,PrintUIEntry /Ss /n "printer" /a "file.dat"
Restaurar todas as configurações da impressora de um arquivo: 
rundll32 printui.dll,PrintUIEntry /Sr /n "printer" /a "file.dat"
   Armazenar informações sobre a impressora no nível 2 em um arquivo:
rundll32 printui.dll,PrintUIEntry /Ss /n "printer" /a "file.dat" 2
   Restaurar de um descritor de segurança da impressora de arquivo:
rundll32 printui.dll,PrintUIEntry /Sr /n "printer" /a "file.dat" s
   Restaurar de um devmode global da impressora de arquivo e dados de impressora:
rundll32 printui.dll,PrintUIEntry /Sr /n "printer" /a "file.dat" g d
   Restaurar as configurações mínimas com base em um arquivo e resolver o  nome da porta:
rundll32 printui.dll,PrintUIEntry /Sr /n "printer" /a "file.dat" m p
   Habilitar Processo do Cliente para uma impressora:
rundll32 printui.dll,PrintUIEntry /Xs /nClientSideRender da "impressora" habilitado
   Desabilitar Processo do Cliente para uma impressora:
rundll32 printui.dll,PrintUIEntry /Xs /nClientSideRender da "impressora" desabilitado

Comentários

Postagens mais visitadas deste blog

Lava-louças Brastemp BLE20 - RESOLVIDO - Piscando luzes Iniciar e enxaguar/Erro ao jogar água fora

Microsoft Print to PDF não aparece na lista de impressoras nos programas