Чтобы проверить, работает ли приложение или нет, используя Java?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Чтобы проверить, работает ли приложение или нет, используя Java?

Сообщение Anonymous »

У меня есть Java-приложение, которое запускает другое Java-приложение (стороннее) в фоновом режиме, поэтому перед запуском стороннего фонового приложения я хочу проверить, запущено ли это приложение или нет (не хочу ждать завершения работы этого приложения).

Я использую следующий код для запуска стороннего Java-приложения:

Код: Выделить всё

String path = new java.io.File("do123-child.cmd").getCanonicalPath();
Runtime.getRuntime().exec(path);
Примечание: файл «do123-child.cmd» вызывает файл «.bat» для запуска этого приложения.


Чтобы проверить, запущено ли данное приложение или нет, я использую следующий код [ссылка на ссылку]:

Код: Выделить всё

boolean result = false;
try {
String line;
Process p = Runtime.getRuntime().exec("tasklist.exe");
BufferedReader input =
new BufferedReader(new InputStreamReader(p.getInputStream()));
while ((line = input.readLine()) != null) {
if(line.startsWith("myApp.exe")){
result = true;
break;
}
}
input.close();
} catch (Exception err) {
err.printStackTrace();
}
return result;
Я хочу знать, есть ли другой способ сделать это без повторения всех запущенных в данный момент процессов? Нравится:

Код: Выделить всё

Process p = Runtime.getRuntime().exec("tasklist /FI \"IMAGENAME eq myApp.exe\" /NH");
int exitVal = p.exitValue();
//if above code throw "java.lang.IllegalThreadStateException" means application is running.
но приведенный выше код возвращает 0 для всех приложений.

Заранее спасибо.

Подробнее здесь: https://stackoverflow.com/questions/306 ... using-java
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»