1

У нас есть устаревшее приложение (с графическим интерфейсом) в нашей компании. Поскольку для запуска вручную необходимо ввести имя пользователя и пароль, мы не можем запустить его автоматически после перезагрузки. Нам нужна программа, чтобы сделать это для нас. Есть ли такая программа?(запускает программу, вводит пользователя и пароль). Мы используем Windows Server 2008.

2 ответа2

2

Я бы порекомендовал использовать «Планировщик заданий» Windows или «Запланированные задания» в зависимости от вашей версии Windows. Он отлично подходит для запуска программ или запуска сценариев без участия пользователя. Вы можете настроить запуск своей задачи на основе различных «триггеров» или «событий», таких как время суток или после перезагрузки. Это может сделать это без входа в систему. Вот учебник , который покажет вам, как настроить задачу для запуска программы после перезагрузки системы. Возможно, вам придется изменить несколько параметров, но это просто в использовании.

1

Вы можете сделать это с помощью VBScript. Я знаю, что есть команда SendKeys которая может отправить практически любой ввод с клавиатуры на программу, запускаемую через скрипт.

Вот один из способов его использования:

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}" 

Вот еще один способ использовать его без 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.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .