CreateProcess error = 5,拒绝访问

时间:2012-08-07 17:41:34

标签: java

//编辑:我不知道我是这样做的,但它适用于插入y.toString()作为路径

:(

非常感谢

如果我尝试执行文件并将路径作为变量,它不起作用,我不断收到“拒绝访问”错误。但是当硬编码完全相同的字符串时,程序就可以正常运行了

File[] files = dir.listFiles();

for(File x : files){
    File[] childfiles = x.listFiles();
    for (File y: childfiles){


    if(y.toString().endsWith(".exe")){

        String fstring ="\"\\\"";
        String lstring ="\\\"\"";

       Process p = Runtime.getRuntime().exec(
                fstring+y.toString().replace("\\","/")+lstring;
                p.waitFor();

    }
}

在i中直接输入文件路径它工作正常(看起来很简单)与我在exec中插入的字符串相同

1 个答案:

答案 0 :(得分:0)

假设您正在执行“abc.exe”。

根据fstring+abc.exe+lstring表格"\"abc.exe\""/替换后形成"/"abc.exe/""。哪个输入执行错误。

直接执行.exe as:

Process p = Runtime.getRuntime().exec(y.getName());
int responseCode = p.waitFor();