Problème Process / Affichage de l'output d'un autre programme
Bonjour tout le monde,
Il faut que lance un petit soft a partir d'un existant en java.
Pour tester, j'ai créé un petit prog en C tout simple :
Code:
1 2 3 4 5 6 7 8 9 10 11
|
#include <iostream>
using namespace std;
int main(int argc, char** argv)
{
for(int i=0;i<argc;i++)
cout << "Argument " << i << " = " << argv[i] << endl;
return 0;
} |
Il marche bien, je l'ai testé.
Maintenant je veux voir si je peux tout récupérer en java :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
String[] tab = new String[2];
tab[0] = leFichier3.getName();
tab[1] = "leFichier.ini";
Process p = Runtime.getRuntime().exec("C:\\monTesteur.exe",tab);
BufferedReader bos = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line = "";
while ((line = bos.readLine()) != null)
{
System.out.println(line);
}
int retour = p.exitValue();
System.out.println("Retour du proc : " + retour); |
J'ai repris ce bout de code d'un autre forum, il avait l'air de marcher...
Mais je n'ai aucun affichage, et le exitValue() me renvoie une valeur alac** genre -1023.
Quelque chose que je n'ai pas compris ?
Merci pour votre temps !