2016-08-19 115 views
2

我試圖創建一個打開和關閉.exe應用程序的程序。這是代碼的一部分:java Processbuilder無法正常工作

public class BotHelper { 
private static String pathToBot = "C:\\Users\\valdemar\\Downloads\\Release\\application.exe"; //bot path 
private static Process p; //bot process 
private static int giorni; //days of activity (chosen by user) 
public static void main(String args[]){ 
    try { 
     p = new ProcessBuilder(pathToBot).start(); 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } 
... 

問題是,代碼實際上似乎沒有做任何事情。 它不運行應用程序,並將應用程序的名稱與運行應用程序的批處理文件的名稱交換給我,表明它找不到所述應用程序。

關於如何解決這個問題的任何想法?

回答

0

您必須從cmd運行批處理腳本。我的意思是你不能直接執行批處理腳本,而是必須執行cmd並從那裏運行腳本。因此,示例命令是:cmd.exe /C C:\path\to\script.bat。然後將Process創建爲:

p = new ProcessBuilder("cmd.exe /C " + pathToScript).start();