一个关于Java调用exe程序的问题

来源:百度知道 编辑:UC知道 时间:2024/05/08 07:49:17
/*具体问题是这样滴,我用C语言编写了一个exe文件,放在E盘.然后运行下面的
这个程序,可是它没反应,俺实在是不知道这是为什么.哪位高手赐教一下,告诉俺这是为什么,该如何解决?
当然,改写程序的前提是:要能用此程序调用已经编好的exe文件,而不是先打开exe文件,再运行这个程序.*/
import java.io.*;
public class exectest1
{
public static void main(String args[])throws IOException
{
Runtime r=Runtime.getRuntime();
Process p=null;
try
{
p=r.exec("e:\\jifen.exe");
System.out.println("Is runing.");
}
catch(Exception e)
{
System.out.println("Error.");
}
}
}

提醒一下,我不知道你说你的exe不可运行是什么意思.如果你的exe程序只是作一些数学的运算的话,那么你是不可能看到它在运行的.不过,你可以与它建立通信的通道,与它进行数据的传输.你想看到dos窗口是不可能滴.

你的exe就是可执行程序,这个方法可以执行你的exe文件,除非你的exe自身就不可执行,这样系统调用会出错。 p = r.exec("cmd /c start e:\\jifen.exe");试试

public class JustTest {

public static void main(String[] args) {
String[] cmd = new String[1];
cmd[0] = "E:\\Movie\\daemon4303-lite.exe";

try {
Process pro = Runtime.getRuntime().exec(cmd);
int recode = pro.waitFor();
System.out.println(recode);
}catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

这是我的程序,我的没有问题,你再检查一下你哪里不对

关注中

你在命令行上边运行e:\\jifen.exe好使吗

cmd.exe /c start e:\\jifen.exe 这么写

import java.io.IOExce