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 Tu peut aussi bien mettre un chemin relatif on absolu si tu souhaite placer ton application externe à un autre emplacement.
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); }
@+
iMac 27" 3.06 GHz Intel Core 2 Duo, 4Go DDR3, Mac OS 10.6.5
MacBook Pro 17", 2,3 GHz Intel Core 2 Duo, 2 Go DDR2, Mac OS 10.4.11
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...
iMac 27" 3.06 GHz Intel Core 2 Duo, 4Go DDR3, Mac OS 10.6.5
MacBook Pro 17", 2,3 GHz Intel Core 2 Duo, 2 Go DDR2, Mac OS 10.4.11
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 !!!!
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager