在我的程序中,如果任务管理器正在运行,我想杀死它。我试过这个: private static final String TASKLIST = "tasklist";private static final String KILL = "taskkill /F /IM ";if(isProcessRunning("Taskmgr.exe")){ // TODO code application logic here killProcess("Taskmgr.exe");}这是我的isProcessRunning()方法:public static boolean isProcessRunning(String servicename) throws Exception { Process p = Runtime.getRuntime().exec(TASKLIST); BufferedReader reader = new BufferedReader(new InputStreamReader( p.getInputStream())); String line; while ((line = reader.readLine()) != null) { System.out.println(line); if (line.contains(servicename)) { System.err.println(line); return true; } } return false;}和killprocess()方法:public static void killProcess(String serviceName) throws Exception { Runtime.getRuntime().exec(KILL + serviceName);}但任务管理器仍在运行。我能做什么?
3 回答
有只小跳蛙
TA贡献1824条经验 获得超8个赞
try{
Process p = Runtime.getRuntime()
p.exec("taskkill /F /IM taskmgr.exe /T")
catch(*Enter applicable exception type here* e){
System.err.println("Caught Exception: " + e.getMessage());
}
没有必要明确检查任务是否正在运行。如果未找到,则不会执行该命令。尝试杀死它,如果出现异常,则在 catch 块中考虑它。
呼唤远方
TA贡献1856条经验 获得超11个赞
您是否尝试过更改流程的案例?
例如:
if(isProcessRunning("taskmgr.exe")){
killProcess("taskmgr.exe");
}
添加回答
举报
0/150
提交
取消