запустить исполняемый файл, а затем ждать, пока этот конкретный исполняемый файл больше не будет работать - PullRequest
1 голос
/ 23 апреля 2011

Я хочу запустить исполняемый файл AHK, а затем сделать так, чтобы java ждал, пока этот исполняемый файл завершит свой собственный процесс в конце сценария, а затем продолжит работу. Существует ли функция для отслеживания запуска конкретного exe-файла?И если он работает, чтобы ждать, пока он не остановится?

, например, в AHK, вы можете сделать:

IfExist, Appname, 
{
insert code
}

Я бы сделал этот проект, используя только AHK, но потому что AHK настолько хрупкий с переменнымии увеличивая его, я не могу заставить его работать, если оно правильно и иначе заявлено

или, если возможно, как я могу заставить Java приостановить себя на период времени

все, что я действительно ищупростой код для запуска .exe и немного кода для ожидания его отсутствия

Ответы [ 2 ]

4 голосов
/ 23 апреля 2011

Вы хотите прочитать java.lang.ProcessBuilder, чтобы запустить исполняемый файл, а затем java.lang.Process.waitFor(), чтобы дождаться завершения процесса. Если вы хотите передать данные в процесс через его стандартный ввод или прочитать его стандартный вывод или стандартный вывод, тогда у вас есть гораздо более сложная задача, включающая потоки для обработки потоков, чтобы процесс не блокировался.

3 голосов
/ 23 апреля 2011

Это так просто, как одна строка кода:

Runtime.getRuntime().exec(<insert executable file here>).waitfor();

PS: Это всего лишь одна строка, поэтому я не возражаю, но это не место для получения полного рабочего кода от других.Обычный ответ - «посмотри сюда, сделай сам», если только ОП не опубликует соответствующий код с отсутствующей маленькой частью, чего здесь нет.
PS2: Пожалуйста, рассмотрите вопрос о том, чтобы принять ответ Джима, поскольку он был правильным.

...