Question

J'utilise Java 1.6, Eclipse, Windows 7.J'essaie d'exécuter des commandes dans un programme Java pour utiliser NMAP.

Le code :

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

Process pr = rt.exec(cmd);

fonctionne bien, mais le code :

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

Process pr = rt.exec(cmd);

ce n'est tout simplement pas le cas.

J'ai essayé les deux commandes dans l'invite de commande, elles fonctionnent toutes les deux correctement mais la dernière échoue lorsque je l'essaye avec Runtime.exec().Quel serait le problème ?

Merci d'avance..

Était-ce utile?

La solution

Peut être "Quand Runtime.exec() ne le fera pas" peut vous aider.

La raison pour laquelle la commande fonctionne dans un shell de commande et non en Java pourrait être que le shell de commande a l'avantage de pouvoir faire référence à la variable d'environnement PATH pour la trouver ;Java ne le peut pas.Je parie que si vous indiquez le chemin complet vers Nmap.exe, vous vous en sortirez mieux.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top