所以,我在Runtime类中使用exec方法在java中启动了一个进程。现在,我如何调用它如下。
Runtime r=Runtime.getRuntime();
Process p=null;
String s="E:\\Softwares\\fiddler4setup.exe";
p=r.exec("cmd /c"+s);
现在,当我尝试使用p.destroy()方法销毁进程时。 Fiddler4setup.exe仍在运行。我一直在寻找方法来关闭这个一周。即使在这里,对于这类问题也没有特别正确的答案。请帮助我。
此外,直接运行文件不起作用,因为它显示一些704错误我猜。然后,我看到了使用“cmd / c”的解决方案。
谢谢。
答案 0 :(得分:1)
要杀死你的进程,你必须使用:
Taskkill /IM YourProcess.exe /F
或使用PID
Taskkill /PID 26356 /F
所以你的程序应该是这样的:
Runtime r = Runtime.getRuntime();
Process p = r.exec("Taskkill /IM fiddler4setup.exe /F");
请注意,您可以在cmd中使用此命令tasklist
获取进程的PID,如果使用PID来避免所有路径问题,这将更好。
修改强>
没有明确的方法可以将您的脚本作为管理员模式运行,这里有一些问题希望可以带给您和想法:
Run command prompt as Administrator
Java: run as administrator
Run Java file as Administrator with full privileges