- PR -

コマンドプロンプトの起動

1
投稿者投稿内容
ノリ
常連さん
会議室デビュー日: 2004/09/24
投稿数: 32
投稿日時: 2004-11-16 02:12
いつもお世話になっています。

WindowsXPでコマンドプロンプトを起動させてやろうとしているんですがコンパイルエラーもなく実行エラーも出ないのですがコマンドプロンプトは起動させれません。
Runtime#exec("C:〜/cmd.exe");

なにか良い方法があれば教えてください。
宜しくお願いします。
Kissinger
ぬし
会議室デビュー日: 2002/04/30
投稿数: 428
お住まい・勤務地: 愛知県
投稿日時: 2004-11-16 09:02
Runtime#exec()は標準入出力のパイプを切り替えて Runtimeから
使用できるようにします。

プログラムを起動しただけで標準入出力に対して何もしなければ、
画面には表示しないはずです。
MMX
ぬし
会議室デビュー日: 2001/10/26
投稿数: 861
投稿日時: 2004-11-16 10:24
Windows のパス指定で
C:~/cmd.exe
は動作するか DOS窓で確認しましょう
コマンド出力の回収が必要ないなら、BAT起動もできます

Runtime.getRuntime().exec(new String[ ]
{"start","cmd.exe","/C","PAUSE"});
ノリ
常連さん
会議室デビュー日: 2004/09/24
投稿数: 32
投稿日時: 2004-11-16 19:42
レスありがとうございます。
プログラムに
InputStream is = process.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is));
を追加しましたがDOS窓を起動させることはできませんでした。

DOS窓で"START/I"と打つと新しくDOS窓を起動させれたのでRuntime()#exec("START/I");と変えてみましたがIOExceptionエラーがでてしまいました。

DOS窓で"C:〜/cmd.exe"と打つと"サブディレクトリ又はファイル.exeは既に存在します。"と表示されます。
ノリ
常連さん
会議室デビュー日: 2004/09/24
投稿数: 32
投稿日時: 2004-11-16 20:45
すいません。その後MMXさんの書かれている
Runtime.getRuntime().exec(new String[ ]
{"start","cmd.exe","/C","PAUSE"});

Runtime.getRuntime().exec(new String[ ]
{cmd.exe","/C","START"});
に変えてやると出来ました。

ホントにありがとうございました。
またよろしくお願いします。
1

スキルアップ/キャリアアップ(JOB@IT)