バッチファイルを実行する次の行があります。
Process process = Runtime.getRuntime().exec("cmd /c start rake.bat");
しかし、バックグラウンドで実行し、コマンドラインをユーザーに表示したくありません。これを行うにはどうすれば変更できますか?
問題は、コマンド ウィンドウが開き、プログラムの GUI に割り込むことです。バッチファイルの実行中にコマンドウィンドウが表示されないようにしたいだけです。
バッチファイルを実行する次の行があります。
Process process = Runtime.getRuntime().exec("cmd /c start rake.bat");
しかし、バックグラウンドで実行し、コマンドラインをユーザーに表示したくありません。これを行うにはどうすれば変更できますか?
問題は、コマンド ウィンドウが開き、プログラムの GUI に割り込むことです。バッチファイルの実行中にコマンドウィンドウが表示されないようにしたいだけです。
「開始」を完全に削除すると、必要なことが行われます(これがウィンドウを作成しているためです):
Process process = Runtime.getRuntime().exec("cmd /c rake.bat");
私はこれをテストしましたが、もちろん、コマンドプロンプトと通信したい場合は、入力ストリームと出力ストリームが必要であり、エラーストリームも忘れないでください。動作しません)。
Process process = Runtime.getRuntime().exec("cmd /c start rake.bat");
上記の行を Java プロセスから呼び出してバッチ ファイルを実行する場合。これはデフォルトでバックグラウンドで実行されます。