Iniciar automaticamente um aplicativo do Windows que requer um nome de usuário e senha

1

Temos uma aplicação legada (com GUI) em nossa empresa. Como é necessário inserir usuário e senha para iniciar manualmente, não podemos iniciá-lo automaticamente após a reinicialização. Precisamos de um programa para fazer isso por nós. Existe algum programa desse tipo? (Inicia um programa entre usuário e senha). Estamos usando o Windows Server 2008.

    
por Majid Azimi 16.04.2012 / 06:39

2 respostas

1

Você poderia fazer isso usando o VBScript. Eu sei que há um comando SendKeys que pode enviar praticamente qualquer tipo de entrada de teclado para um programa lançado através do script.

Aqui está uma maneira de usá-lo :

set WshShell = WScript.CreateObject("WScript.Shell") 

WshShell.run "runas /user:domain\user %comspec%" 'Open command prompt  
WScript.Sleep 1000 
WshShell.SendKeys "password" 'send password   
WshShell.SendKeys "{ENTER}"    
WScript.Sleep 1000 

'Open IE 
WshShell.SendKeys Chr(34) + "C:\PROGRAM FILES\INTERNET EXPLORER\IEXPLORE.EXE"_
  + Chr(34) 
WshShell.SendKeys "{ENTER}" 

WshShell.SendKeys "exit"  'Close command prompt 
WshShell.SendKeys "{ENTER}" 
WScript.Sleep 1000 

WshShell.SendKeys "{TAB}" 
WshShell.SendKeys "http://www.microsoft.com" 'Send internet page to open to IE 
WshShell.SendKeys "{ENTER}" 

Aqui está outro método de usá-lo sem WshShell :

Dim ProcID As Integer
' Start the Calculator application, and store the process id.
ProcID = Shell("CALC.EXE", AppWinStyle.NormalFocus)
' Activate the Calculator application.
AppActivate(ProcID)
' Send the keystrokes to the Calculator application.
My.Computer.Keyboard.SendKeys("22", True)
My.Computer.Keyboard.SendKeys("*", True)
My.Computer.Keyboard.SendKeys("44", True)
My.Computer.Keyboard.SendKeys("=", True)
' The result is 22 * 44 = 968.
    
por 16.04.2012 / 08:55
2

Eu recomendaria usar o 'Agendador de Tarefas' do Windows ou 'Tarefas agendadas' dependendo da sua versão do Windows. É ótimo para iniciar programas ou iniciar scripts sem intervenção do usuário. Você pode configurar sua tarefa para iniciar com base em diferentes 'gatilhos' ou 'eventos', como a hora do dia ou depois de uma reinicialização. Pode fazer isso sem estar logado. Veja um tutorial que mostrará como configurar uma tarefa para iniciar um programa após uma reinicialização do sistema. Você pode precisar alterar alguns dos parâmetros, mas é fácil de usar.

    
por 16.04.2012 / 10:23