Java: остановить дочерний процесс - PullRequest
1 голос
/ 17 июня 2010

Есть ли способ запустить не-Java-процесс из Java, а затем остановить его?Или, по крайней мере, отправить ему несколько ключевых входных данных (например, alt + f4)?

Например, я запускаю java-приложение, затем javaapp запускаю блокнот, затем javaapp отправляет alt + f4 в блокнот.Javaapp будет запускаться из учетной записи администратора.

Вопрос касается только ОС Windows.

Ответы [ 2 ]

1 голос
/ 17 июня 2010

РЕДАКТИРОВАТЬ: пропущенный вопрос о запуске ...

Для создания используйте Runtime.getRuntime (). Exec ()

Чтобы уничтожить, используйте: Process.destroy () Из Javadoc:

Убивает подпроцесс. Подпроцесс, представленный этим объектом Process, принудительно завершается.

1 голос
/ 17 июня 2010

Вы можете начать новый процесс с Runtime.exec().Затем получите стандартный ввод возвращаемого процесса с помощью Process.getOutputStream() и нажмите на него.В конце вы можете destroy() it.

Обратите внимание, что вы должны использовать весь вывод процесса, чтобы он работал правильно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...