質問

私は、Java 1.6、Eclipseの、Windows 7を使用しています。 私はNMAPを使用するJavaプログラムでコマンドを実行しようとしています。

コード

String cmd[] = { "cmd.exe", "/c","start notepad.exe"};

Process pr = rt.exec(cmd);

罰金を動作しますが、コード:

String cmd[] = { "cmd.exe", "/c","start nmap.exe"};

Process pr = rt.exec(cmd);

単にません。

()私は、彼らは両方の仕事の罰金、コマンドプロンプトで両方のコマンドを試してみましたが、私はのRuntime.execでそれをしようとすると、後者は失敗します。何が問題でしょうか?

おかげで、事前に..

役に立ちましたか?

解決

たぶん」のRuntime.exec()ウォン「T」にはあなたを助けることができます。

コマンドは、コマンドシェルではなく、Javaで動作する理由は、コマンドシェルはそれを見つけるためにPATH環境変数を参照することができるという利点を持っていることかもしれません。 Javaはできません。あなたがより良い運賃だろうとNmap.exeへのフルパスを置けば、私はきっとます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top