quinta-feira, novembro 23, 2017
Breaking News
Home » Programação/ Scripts » bat (MS-DOS) » Mapeando impressoras com bat e vbs

Mapeando impressoras com bat e vbs

[atualizado 08/12/2015]

Após uma alteração do Tema, a formatação do código foi perdida. Corrigimos nesta atualização

Boa tarde leitores do PI.
Recentemente precisei adicionar algumas impressoras em meus usuários de rede usando credenciais diferentes das então logadas por eles. Criei um script bat que se conecta à impressora usando credenciais diferentes, e um vbs que mapeia e define a impressora como padrão. Segue:

Vamos ao que interessa:

  1. Abra um arquivo de texto e salve-o como impressora.bat
  2. Digite os comando a seguir para criar o script (as linhas começadas por REM são comentários, não altera em nada a função, apenas explica o comando. Se você não tem experiência em scripts, recomendo que as deixe.)
  3. Conteudo do arquivo impressoras.bat:
    echo off
    net use ServidorNomeDaImpressora /user: Dominio\usuario senha
    impressoras.vbs
  4. Crie um novo arquivo de texto e salve na mesma pasta do anterior com o nome impressoras.vbs
  5. Conteúdo do arquivo impressoras.vbs:
    Set WshNetwork = CreateObject(“WScript.Network”)
    WshNetwork.AddWindowsPrinterConnection “Servidor\NomeDaImpressora”
    WshNetwork.SetDefaultPrinter “Servidor\NomeDaImpressora”

Em caso de dúvida, poste nos comentários..

link de referência: https://msdn.microsoft.com/en-us/library/2ccwwdct%28v=vs.84%29.aspx

fico por aqui e até a próxima!

Sobre Diego Duarte

Diego Duarte Atua como coordenador de NOC, toca um violãozinho nas horas vagas e tenta eternamente entender o que o fez escolher TI

Veja também!

Adicionando sites confiáveis via scripts vbs

Constantemente vemos algum site não acessando corretamente, ou não finalizando determinada função devido a falha de permissão no Internet Explorer. Quando se trata de poucas estações de trabalho o trabalho pode ser feito manualmente, contudo, em um parque mais extenso, a tarefa é de grande esforço e sem uma forma de automatização, a tarefa pode requerer boas horas de trabalho. Pensando no quesito de automatização, abaixo um script que pode ser uma solução alternativa à GPOs, ou que pode usado para se adicionar sites confiáveis em multiclientes, etc.

13 comentários

  1. Onde Anunciar

    Tudo de bom, parabéns pela postagem, fica com Deus

  2. Gustavo

    Amigo, veja se pode me ajudar. Trabalho em uma empresa e emito notas fiscais. Isso exige que além das NF’s eu emita um relatório para cada processo que estou manuseando, porém pela política da empresa, cada documento que vou imprimir tenho que digitar a minha senha de impressora duas vezes. Como eu poderia fazer para usar uma das teclas do teclado tipo F11 e F12 que não uso nunca para carregar minha senha no campo sem precisar ficar digitando a senha toda vez. É possível fazer isso por um script? Desde já agradeço a atenção.

    • Draco Necros

      conhece o programa chamado Ditto ? ele da uma gerenciada na area de colagem sendo assim vc digita a senha em um bloco de notas e copia ai define uma tecla padrão no ditto tipo o f11 por exemplo para colar a senha.

  3. aristides

    Ok, estava recisando mesmo fazer isso num petshop de um amigo.
    Mas como faço esse scipt .VBS? Quero dizer, no Windows 2003 server já tem algum programa que vai entender o script ou preciso instalá-lo. Onde devo salvar o script? Desculpe as pergutas mas realmente estou iniciando no ramo.

    • Note que no post ja tem um exemplo do script. Os Windows, reconhecem de forma nativa os scripts .vbs. Basta salvar na mesma pasta do .bat, que ele acha e dá sequencia.

  4. amigo, tudo bom?
    Fiz um scrip parecido com esse, mas a unica coisa que estou querendo mas não esta funcionando é o seguinte, tenho as impressoras instaladas ja no computador, quero ficar alternando as impressoras como padrão porem buscando em localhost. Esse meu script não funcionou.
    Voce sabe o que pode ser?O ip que setei foi o da propria máquina.

    Set objNetwork = WScript.CreateObject(“WScript.Network”)

    objNetwork.AddWindowsPrinterConnection “\\172.28.78.20\sp_c420dn”

    objNetwork.SetDefaultPrinter “\\172.28.78.20\sp_c420dn”

  5. a unica coisa que quero é que ele busque as impressoras na propria maquina, e não na rede.
    valeu

    • Diego, não seria apenas compartilhar a impressora e depois setar o script como como localhost no Nome do server \ nome da impressora?

  6. bom dia… o script é muito util.. mas por favor.. poderia me mandar o script sem comentários? pois está bem complicado de entender ele desta forma que você postou… ele não tem alinhamento para saber o que é código, o que é comentário.
    Novamente obrigado.

  7. Marcial Siqueira

    Bom dia
    Seguinte estou com um problema preciso. Instala a impressora, cria as filas até ai tudo certo, porem tem algumas impressoras que tem como acessório a unidade de duplex, teria algum comando para que ao rodar o arquivo .vbs fique ativa essa função para poder escolher na hr da mandar imprimir? Da maneira que fiz a opçao de duplex nao tem como mudar, a nao ser q vou la no driver e habilito o acessorio da unidade de duplex, ai fica certo, porem gostaria que ficasse tudo ok so rodando o script, tem como?
    Valeu

  8. Victor Lima

    Bom dia Diego. Eu preciso mapear automaticamente uma impressora, somente pelo login do usuário, e esta impressora esta compartilhada em um servidor. Esses comando acima serve para isso. Se puder me dar uma atenção especial, pois não manjo nada de arquivos .bad e vbs. Desde já obrigado!

Este artigo lhe foi útil? comente e ajude outros acrescentando seu ponto de vista!