Bonjour!
Je voudrais executer un .exe depuis mon programme java. Je sais qu'il exite la méthode Runtime.exec(...), mais je ne sais pas où mettre mon .exe dans l'arboréscence de mon projet...?? Quelqu'un peut-il m'aider?
Merci d'avance...
Bonjour!
Je voudrais executer un .exe depuis mon programme java. Je sais qu'il exite la méthode Runtime.exec(...), mais je ne sais pas où mettre mon .exe dans l'arboréscence de mon projet...?? Quelqu'un peut-il m'aider?
Merci d'avance...
Pour lancer une commande externe :
Il suffit de mettre ton application externe à la racine du répertoire et voila
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 try { String cmd = "ton application externe.exe" ; Runtime r = Runtime.getRuntime(); Process p = r.exec(cmd); p.waitFor();//si l'application doit attendre a ce que ce process fini }catch(Exception e) { System.out.println("erreur d'execution " + cmd); } catch(Exception e) { System.out.println("erreur d'execution " + cmd); }Tu peut aussi bien mettre un chemin relatif on absolu si tu souhaite placer ton application externe à un autre emplacement.
@+![]()
Merci!!
Mais où puis-je mettre les paramètres de ma commande? à la suite?
J'aurais une autre question... saurais-tu comment récupérer ce que me renvoie mon exe?
Merci....;-)
Pour ce qui est d'envoyer une commande à ton apllication je pense que ça se fait comme ça (pas sur![]()
![]()
):
Pour ce qui est de recevoir les données de l'application, pourquoi n'essayerais tu pas java.io? Genre un InputStream à partir de ton runutime...
Code : Sélectionner tout - Visualiser dans une fenêtre à part String[] cmd = {"ta commande", "ton application.exe"}
Mais encore une fois, je n'en suis pas sur...Je me suis toujours contente de lancer des .exe sans rien faire d'autre.
mais si c'est juste dis le...Si cela ne les pas
dit moi comment on fais si tu trouve, ça pourrait n'interesser...
![]()
Salut!!
Bon, je n'ai plus de problème!!
Pour ce qui est de la commande, je n'avais tout simplement pas copié mon fichier.exe dans le bon répertoire! Il suffit ensuite d'écrire simplement la commande dans un string:
String cmd = "appli param1 param2 ...";
et de l'executer:
Process p = Runtime.getRuntime().exec(cmd);
C'est pas plus compliqué en fait!!
Et en ce qui concerne la récupération des données, l' InputStream fonctionne tres bien !!
final BufferedInputStream in = new BufferedInputStream(p.getInputStream());
final OutputStream out = new FileOutputStream("H:/Projet Telemed/eData_PackSanté/pack santé/Sources/WebService/fichierTXT.txt");
final BufferedReader br = new BufferedReader ( new InputStreamReader (in ));
byte [] buffer;
String s;
while((s = br.readLine()) != null ) {
buffer = s.getBytes ();
out.write( buffer );
System.out.println(s);
}
Merci pour le tuyau !!!!
Partager