2016-08-19 16 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(); 
関連する問題