用JAVA的Runtime.getRuntime().exec()执行程序执行不了?
我试过用Runtime.getRuntime().exec("notepad")调用记事本程序,这是可以的。但是我有一个在D:\EXE\下的M.exe可执行文件,这个可执...
我试过用Runtime.getRuntime().exec("notepad")调用记事本程序,这是可以的。但是我有一个在D:\EXE\下的M.exe可执行文件,这个可执行文件的运行是带参数的,我把参数存放在字符串arguments里,同样用Runtime.getRuntime().exec("D:\\EXE\\M.exe "+arguments)来调用,可是这样就无法执行。
同样的带参数命令我放在“开始-》运行”里,或者CMD里调用都是可以出正确结果的。
这是为什么呢?
还是不行啊 展开
同样的带参数命令我放在“开始-》运行”里,或者CMD里调用都是可以出正确结果的。
这是为什么呢?
还是不行啊 展开
3个回答
展开全部
你可以用直接方法。
if (e.getSource()==j1)
{try {
p1=Runtime.getRuntime().exec("\"E:/WAR31.20/WAR31.20/War3.exe\"");
p2=Runtime.getRuntime().exec("\"E:/WAR31.20/WAR31.20/warkey107.exe\"");
try {
if( p1.waitFor()==0)
p2.destroy();
} catch (InterruptedException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
} catch (IOException e1) {
e1.printStackTrace();
}
像我这个方法,可以在启动魔兽争霸 时自动启动显血工具,而关闭魔兽时自动关闭显血工具。
看着试试吧。
if (e.getSource()==j1)
{try {
p1=Runtime.getRuntime().exec("\"E:/WAR31.20/WAR31.20/War3.exe\"");
p2=Runtime.getRuntime().exec("\"E:/WAR31.20/WAR31.20/warkey107.exe\"");
try {
if( p1.waitFor()==0)
p2.destroy();
} catch (InterruptedException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
} catch (IOException e1) {
e1.printStackTrace();
}
像我这个方法,可以在启动魔兽争霸 时自动启动显血工具,而关闭魔兽时自动关闭显血工具。
看着试试吧。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把D:\\EXE\\M.exe "+arguments
改成D:/EXE/M.exe "+arguments
改成D:/EXE/M.exe "+arguments
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询