所以,我已经在运行时类中使用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"的解决方案。
谢谢。
要杀死您必须使用的过程:
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避免所有路径问题,这会更好。
编辑
没有明确的方法将脚本作为管理员模式运行,这里有一些问题,希望可以给您和想法:
运行命令提示为管理员
Java:作为管理员运行
运行具有完整特权的管理员Java文件