terça-feira, setembro 19, 2017
Home » Programação/ Scripts » Runas com senha via VBScript

Runas com senha via VBScript

[ATUALIZADO 12/01/2016]

Corrigido laytout do código

Muitos me questionam sobre a possibilidade de criar scripts usando o comando RUNAS de forma que a senha do usuário também já seja informada. Passeando pela Internet, achei uma solução usando Visual Basic Script (VBS). Seguem um exemplo abaixo, onde irei usar o script para abrir um prompt de comando como Administrador, mas vocês podem adaptar o comando para rodar qualquer programa e com qualquer usuário ok.

Set CmdShell= Wscript.CreateObject(“Wscript.Shell”)

CmdShell.Run “runas /user:cursoadministrator “”%systemroot%system32cmd.exe”””

Wscript.Sleep 100

CmdShell.SendKeys “[email protected]~”

Wscript.Quit

Na Quarta linha, opção CmdShell.SendKeys a senha tem que ser informada entre “ASPAS” e o “til” ~ devem ser adicionados após a mesma.

 

Gostaria de ler outros artigos sobre scripts? clique aqui

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!

Logo Powershell

Convertendo Powershell Scripts em Executáveis (ps1 para exe)

Olá, Pessoal A dica de hoje pode facilitar a vida de quem deseja automatizar tarefas …

6 comentários

  1. DIEGO LEAL

    Olá Diego, tenho um problema bem particular.
    Meus micros estão em um dominio (Ex: diego.br), e quero definir uma impressora padrão para todos os usuários que fizerem logon no micro.
    Porém meu arquivo .bat para definir as impressora como padrão, só permitir mudar os usuários locais do micro (administrador, user, cliente).
    Os usuários que fazem logon no domínio não tem permissão para executar o BAT.
    Então estava querendo usar esse seu script em VBS para dar as permissões para executar o bat em cada logon.
    Fiz as modificações seguintes no seus script:

    Set CmdShell= Wscript.CreateObject(“Wscript.Shell”)
    CmdShell.Run “runas /user:diego “”C:\printer\printer.bat”””
    Wscript.Sleep 100
    CmdShell.SendKeys “A123456~”
    Wscript.Quit

    Sendo que meu usuários com permissão de administrador no domínio é diego e senha A123456.
    E não quero abrir um cmd, e sim executar meu arquivo script.bat que está no C: na pasta printer.

    Segue meu arquivo bat:

    rundll32 printui.dll PrintUIEntry /y /n\\br-005356\Hp1010

    Sendo que o computador local possui o nome de br-005356 e o nome da impressora é Hp1010.
    E claro no domínio diego.br.
    Que funciona quando ponho esse script no logon do windows para todos os usuários.
    Mas so consegue mudar dos usuários locais do micro.

  2. thiagho

    E se não uso senha o que faço?

  3. Leonildo

    pode me ajudar quero rodar este script em bat para chamar o programa da GRRF(caixa economica) em uma estação de trabalho que roda win7 esta estação esta fora de um dominio, porem criei uma conta que não tem direito de administadror tentei aplicar este script e não rodou pode me dizer onde esta o erro:

    Set CmdShell= Wscript.CreateObject(“Wscript.Shell”)
    CmdShell.Run “runas /user:TI_APICE”””c:\programas\grrf\grrf.exe”””
    Wscript.Sleep 100
    CmdShell.SendKeys “4p1c32015~”
    Wscript.Quit

  4. Antonio Carlos Barros dos Santos

    Amigo Diego Duarte, bom dia, bem eu gostaria que você me ajudasse como fazer um script em vbs, exemplo: eu quero que quando o usuário digite a senha do administrador local autenticado e quando digitasse errado a maquina desligasse como forma de segurança, ou pode por exemplo também, o usuário tenta digitar por 5 tentativas ou menos a senha o computador é desligado? Agradeço amigo se me passar algo sobre isso.

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