1

プログラムを実行したい ( System.getenv("appdata") + "ffmpeg")。また、コンソール出力を取得できるプロセスまたは何かを取得できるようにしたいと考えています。以前に"cmd /C " + を試しSystem.getenv("appdata") + "ffmpeg"ましたが、うまくいかなかったようです。どんな助けでも大歓迎です!

ここにいくつかのコードがあります:

Process p = exec(testFFMpeg);
    int ex = -1;
    try {
        ex = p.waitFor();
    } catch (InterruptedException e) {
        e.printStackTrace();
        CrashHandler.reportCrash("FFMpeg", "Unable to test FFMpeg", "start up with more permissions");
    }

    if(ex == 0){
        System.out.println("Normal execution, exit value: " + ex);
        BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));
        String line = null;

        do{
            try {
                line = br.readLine();
                System.out.println(line);
            } catch (IOException e) {
                e.printStackTrace();
                CrashHandler.reportCrash("FFMpeg", "Unable to test FFMpeg", "start up with more permissions");
            }
        }while(line != null);
    }else{
        System.out.println("Execution exit value: " + ex);
    }
}

private static Process exec(String[] cmd){
    try {
        return Runtime.getRuntime().exec(cmd);
    } catch (IOException e) {
        e.printStackTrace();
        CrashHandler.reportCrash("FFMpeg", "Unable to test FFMpeg", "start up with more permissions");
    }

ファイルの正確な場所は、`System.getenv("appdata") + "\VinVid\" + "ffmpeg.exe" です。

4

3 に答える 3