-2
我得到下面的代码。它检查程序是否正在运行。如果程序没有运行,它会再次检查它,直到它发现程序正在运行以结束循环。而事情是我不知道如何循环它。等待程序运行
public class Test {
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws IOException {
String line;
String pidInfo ="";
Process p =Runtime.getRuntime().exec(System.getenv("windir") +"\\system32\\"+"tasklist.exe");
try (BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()))) {
while ((line = input.readLine()) != null) {
pidInfo+=line;
}
}
while(pidInfo == "msiexec.exe")
if(pidInfo.contains("msiexec.exe")) {
System.out.println("Notepad is running");
TimeUnit.SECONDS.sleep(120);
} else {
System.out.println("Notepad is not running");
loop
}
}
}
但输出为空。任何人都可以告诉我我的代码有什么问题吗?任何帮助,将不胜感激。
我想第二个循环来检查msiexec.exe是否正在运行。如果它没有运行,它会再次循环来检查它是否运行。如果找到指定的进程运行,则循环将终止。我上面编辑了我的代码。 有没有其他的代码呢? –
你不需要第二次循环!您已经在单个字符串中捕获了每个任务名称。然后,只要测试该字符串是否包含您的任务名称。 –