在我的程序中,如果任务管理器正在运行,我想杀死它。我试过这个:
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");
}
Run Code Online (Sandbox Code Playgroud)
这是我的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;
}
Run Code Online (Sandbox Code Playgroud)
And the killprocess() method:
public static void killProcess(String serviceName) throws Exception {
Runtime.getRuntime().exec(KILL + serviceName);
}
Run Code Online (Sandbox Code Playgroud)
But Task Manager is still running. What can i do?
好吧,杀死任务管理器你需要管理员权限。为此下载这个。
现在将任何一个文件 Elevate.exe 或 Elevate64.exe 复制到您的 java 项目源路径中。
然后
Runtime.getRuntime().exec("src//Elevate64.exe TASKKILL /F /IM Taskmgr.exe");
Run Code Online (Sandbox Code Playgroud)
现在它会提示是或否。单击是.... 和 BOOM
| 归档时间: |
|
| 查看次数: |
1018 次 |
| 最近记录: |