Gerenciando impressoras, de preferência não GPO

0

Trabalho para uma empresa que possui aproximadamente 3.000 computadores e aproximadamente 1.500 impressoras. Atualmente, o método para instalar uma impressora é bastante manual, e estamos olhando para automatizar o processo. Existem certas restrições que se aplicam a esta pergunta:

  • Deve funcionar no Windows 7 e Windows 10
  • A solução não pode ser um servidor de impressão

Além disso, tenho algumas preferências pessoais quanto à solução:

  • De preferência, não requer direitos administrativos para o PC
  • De preferência, pode ser gerenciado remotamente, ou seja, uma alteração em um modelo de impressora pode ser replicada para todos os usuários no domínio
  • De preferência, é necessário pouco script, pois planejamos fazer com que os usuários finais operem essa ferramenta.

O processo atual que estamos usando é executar o seguinte comando (ou criar um script em lote), mas essa definitivamente não é uma solução válida:

rundll32 printui.dll,PrintUIEntry /ia /m "Kyocera FS-4100DN KX" /f "\\share\xfer\PRTscript\_drivers\KXDriver\32bit\OEMsetup.inf"

Esta não é uma solução válida como:

  1. Não podemos replicar alterações nos clientes (a menos que alojemos o 'script' em um compartilhamento
  2. Requer direitos administrativos para instalar as impressoras
  3. É uma tarefa manual e não consegue distinguir 32 de 64 bits (ou pelo menos, deve atender a ambos)

Agora, eu sei que podemos usar a opção Diretivas de Grupo para implantar impressoras, mas isso depende de duas coisas:

  1. A OU da empresa (ou pelo menos, grupo de segurança) está correta e;
  2. Os PCs em questão estão recebendo a Diretiva de Grupo ( deveriam )

E sim, eu sei que a Diretiva de Grupo corresponde a todos os meus requisitos E preferências, mas só quero examinar minhas opções antes de precisar arrumar minha UO (e sub-UO, grupos de segurança e políticas existentes) - no final, o GPO seria o solução mais sábia, mas quero uma ferramenta de curto prazo enquanto trabalho nisso.

Então, talvez, pensei, poderíamos usar um script simples do Visual Basic - mas, novamente, isso requer muita edição manual e a única maneira de pensar em automatizar isso seria implantar por meio da Diretiva de Grupo:

Set WshNetwork = CreateObject("WScript.Network")
PrinterPath = "\\Server\Printer"
PrinterDriver = "PrinterDriver"
WshNetwork.AddWindowsPrinterConnection PrinterPath, PrinterDriver
WshNetwork.SetDefaultPrinter "\\Server\Printer"

A próxima teoria que posso descartar seria usar o PrintBRM

DankyNanky
fonte
Então, em essência, você está procurando uma solução corporativa sem usar nenhuma ferramenta corporativa. Com essas restrições, você deve começar a codificar um aplicativo para seus usuários finais.
Seth

Respostas:

1

https://drive.google.com/open?id=0ByhxkwJBdusDczU2MXhrYldfLUU

cscript printer.vbs -u ad\username -w <password> -s <computer name>
cscript printer.vbs -u ad\username -w <password> -s <computer name>
cscript printer.vbs -u ad\username -w <password> -s <computer name>
cscript printer.vbs -u ad\username -w <password> -s <computer name>

O objetivo deste script é instalar uma impressora em um computador remoto sem visitar o local.

Eu costumo fazer uma lista de 25 e copiar e colar em uma janela de comando administrativo e deixá-los executar.

Referindo-se ao item 3 acima de 32/64 bits. Meu script assume 64 bits e, se isso falhar, ele volta para a instalação de 32 bits.

A instalação de uma impressora precisará de direitos de administrador; é melhor você fazê-lo do que permitir que um usuário faça isso.

Para evitar erros, excluo qualquer porta / impressora existente com o mesmo nome e a recrio.

O nome de usuário e a senha são credenciais de domínio, não locais. Talvez isso lhe dê um ponto de partida. Pode ser necessário modificar o código para adicionar as informações do driver da impressora na linha de comando. Eu tenho principalmente a mesma impressora, então eu a codifiquei. Além disso, o próprio nome da impressora poderia ser um parâmetro, eu nunca o fiz.

Estou apenas ajustando o código.

cscript printer.vbs -p "Printer Name" -d "HP Universal Printing PS (v6.0.0)" -i "prnhp001.inf" -h "\\<server>\drivers\Printer\prnhp001" -u ad\username -w <password> -s <computer name>
cybernard
fonte