如何使用java停止.exe文件。我有一个.exe,点击jsp页面上的按钮开始。现在我不知道如何使用java来阻止它。下面是启动.exe文件的jave代码段。任何人都可以找到阻止它的解决方案吗?
protected void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
try {
res.setContentType("text/html;charset=UTF-8");
PrintWriter out = res.getWriter();
Runtime rt = Runtime.getRuntime();
Process p = rt.exec("C:\\tools\\server\\grd.exe" );
out.println("ServerStarted");
} catch (Throwable t) {
t.printStackTrace();
}
}
答案 0 :(得分:3)
你可以杀死Process
Process p = ...
p.destroy();
杀死子进程。此进程表示的子进程 对象被强行终止。
如果您将来要杀死请求,则需要保留对Process
的引用,可能是HttpSession
属性。
在你的servlet方法中
Process p = ...
req.getSession(true).setAttribute("process", p);
在将来的请求中(在同一会话中)
Process p = (Process) req.getSession().getAttribute("process");
答案 1 :(得分:1)
如果该过程是唯一的,您可以尝试以下操作。小心使用。
Runtime rt = Runtime.getRuntime();
Process p = rt.exec("cmd /c taskkill /F /IM grd.exe");