2011-07-04 7 views
0

Javaからユーティリティwindump.exeを呼び出して、しばらくしてから使用を終了します。cmd.exeを実行するには、Javaを使用してwindump.exeを実行する方法

しかし、私はどのようにJavaコードからそれを殺すか分からない。私はprocess.destroy()を試して、それを起動したプロセスにCtrl Cchar 3)を送信しましたが、これは動作していません。 ランタイムと同様にProcessBuilderを試してみて、プロセスを強制終了しますが、結果は同じです。

私はちょうどJavaを使用し始めました。どんな提案も大きな助けになります。これはJavaがサポートしていない制限ですか?または、Javaコードからcmdで開始されたバイナリを強制終了する方法は何ですか?

私はWindows 7でJavaSE1.6とjre6を使用しています。次に、コードスニペットを示します。

ProcessBuilder pb = new ProcessBuilder("cmd","/c start D:\\windump.exe -s 0 -i 5 -A -w D:\\vne.pcap"); 
Process WinDumpProc = null; 
WinDumpProc = pb.start(); 

Thread.sleep(3000); 
BufferedWriter out = new BufferedWriter (new OutputStreamWriter(WinDumpProc.getOutputStream())); 

out.write((char)3); 
out.flush(); 
WinDumpProc.destroy(); 

答えて

0

ここで問題となるのは、windump.exeの子プロセスを作成するcmdのプロセスを作成することです。 代わりにwindum.exeを直接起動してください。

関連する問題