Frage

Ich bin mit Java 1.6, Eclipse Windows 7. Ich versuche, Befehle in einem Java-Programm auszuführen NMAP zu verwenden.

Der Code:

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

Process pr = rt.exec(cmd);

funktioniert gut, aber der Code:

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

Process pr = rt.exec(cmd);

einfach nicht.

Ich habe versucht, beiden Befehle in der Eingabeaufforderung, sie funktionieren beide gut, aber letzteres schlägt fehl, wenn ich es mit dem Runtime.exec versuchen (). Was wäre das Problem?

Vielen Dank im Voraus ..

War es hilfreich?

Lösung

Vielleicht "Wenn Runtime.exec () gewonnen ‚t" Ihnen helfen können.

Der Grund arbeitet der Befehl in einem Kommando-Shell und nicht in Java sein könnte, dass der Kommando-Shell den Vorteil, in der Lage, muss die Umgebungsvariable PATH zu finden, sie zu finden; Java nicht. Ich wette, wenn Sie den vollständigen Pfad zu Nmap.exe setzen, dass Sie besser.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top