2014-04-04 7 views
5

Я пытаюсь получить пакетный файл, чтобы автоматически вводить пароль в программу «runas», но я не могу заставить его работать. Вот мой пакетный файл до сих пор:Автоматически реагировать на runas из командного файла

echo password | runas /user:testuser c:/path/to/my/program.exe 

Однако я получаю сообщение об ошибке сказав «неизвестное имя пользователя или пароль». Я также пробовал:

runas /user:testuser c:/path/to/my/program.exe < c:/path/to/file/containing/password.txt 

Это происходит с той же ошибкой. Кто-нибудь знает, как это сделать? То, что я пытаюсь сделать в конечном итоге, - получить командный файл для чтения имени пользователя и пароля из файла конфигурации, а затем запустить «program.exe» в качестве этого пользователя.

ответ

8

Гибридный сценарий Batch-JScript ниже выполняет то, что вы хотите. Сохраните его с расширением .bat.

@if (@CodeSection == @Batch) @then 
@echo off 
start "" runas /user:testuser c:/path/to/my/program.exe 
CScript //nologo //E:JScript "%~F0" 
goto :EOF 
@end 
WScript.CreateObject("WScript.Shell").SendKeys("password{ENTER}"); 

Для получения более подробной информации см this post

+0

Спасибо! У меня было что-то работающее, создав скрипт .vbs из командного файла, но это также работает и намного более сукцинта! – user1578653