java - 如何使用servlet运行.exe文件

标签 java servlets process

我想从本地服务器运行.exe 文件。 这是下面的代码:

   String cmds = "C:\\IBM\\Abhishek\\Notepad++\notepad++.exe";
 try {
     Process p = Runtime.getRuntime().exec(cmds);
     System.out.println("process "+p);
     p.waitFor();

     BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream()));
     String line = reader.readLine();
     System.out.println("Line---"+line);
     while (line != null) {
       System.out.println("File---"+line);
       line = reader.readLine();
     }
    } catch (Exception e) {
        System.out.println(" Sample Exception :"+e.getMessage());
    }

这里的输出是:

Sample Exception :Cannot run program "C:\IBM\Abhishek\Notepad++": CreateProcess error=5, Access is denied.

请提出建议,

最佳答案

错误消息显示CreateProcess error=5,访问被拒绝。 这意味着您的 Java servlet 进程没有执行该程序的权限。

我认为原因是您在 notepad++.exe 前面缺少 \\ 。您需要转义所有反斜杠。

   "C:\\IBM\\Abhishek\\Notepad++\notepad++.exe"
-> "C:\\IBM\\Abhishek\\Notepad++\\notepad++.exe"

关于java - 如何使用servlet运行.exe文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48303600/

相关文章:

java - 在下一个 Activity 中创建列表之前,在加载屏幕中显示一个计数器(对列表项进行计数)

java - 在 Apache tomcat 7 中安装 taglib 时遇到问题

java - 用户注册后需要基于表单的身份验证。有办法逃避吗?

java - 在 Java 中将 double 转换为 char 数组的算法(不使用 Double.toString 或 StringBuilder 等对象)?

java - 如何使用 Get 请求专门处理 REST API 中的保留字符,例如值 M&S

java - 从客户端到 Java Servlet 的 GET/POST 请求出现 404 Not Found 错误

.NET - 获取在另一个域中的机器上运行的进程

C - 使用进程监视文件

c# - 如何在另一个进程中从 C# 调用 C++ 导出的函数?

java - 通过 SSH 连接的 Ant SCP 任务