2013-09-06 2 views
0

Как запустить exe-файл в качестве администратора, если вы знаете логин и пароль администратора?Запуск exe с использованием Java в качестве администратора

Я попытался с

Runtime.getRuntime().exec("runas /profile /user:Administrator \"cmd.exe /c Powrprof.dll,SetSuspendState\""); 

но он запрашивает пароль, я хочу написать админ логин и пароль в Java коде.

+0

Как общий совет. Прочитайте (и внесите) * все * рекомендации [Когда Runtime.exec() не будет] (http://www.javaworld.com/jw-12-2000/jw-1229-traps.html). Затем проигнорируйте, что он ссылается на 'exec' и создает' Process' с помощью 'ProcessBuilder'. Также разбивайте 'String arg' на' String [] args' для учета аргументов, которые сами содержат пробелы. –

+0

В качестве предложения не используйте метод Runtime # exec() прямо для вызова процесса. Это может привести к зависанию обоих процессов (JVM и вызываемого процесса), если вы не потребляете потоки, созданные вызываемым процессом. Вы можете использовать apache commons exec library, которая имеет метод утилиты для использования потоков, связанных с процессом. –

ответ

1

Просьба ознакомиться с помощью команды runas.

NOTE: Enter user's password only when prompted. 
NOTE: /profile is not compatible with /netonly. 
NOTE: /savecred is not compatible with /smartcard. 
+0

Спасибо! но у меня нет других альтернатив, кроме «runas» для выполнения этой работы? –

+0

Его лучше обрабатывать с помощью пакетного скрипта, если вы хотите сохранить пароль. Но я бы предпочел, чтобы пользователь вводил пароль, так как мы не знаем, был ли пароль изменен. –

Смежные вопросы