[Système] Lancement d'un exe
Alors voila, j'ai un probleme que je ne m'explique pas.
Mon appli java crée un fichier de configuration dans un rep. Je lance ensuite l'exe C++ depuis java mais il ne trouve pas le fichier.
Pourtant que je lance l'exe à la main (directement, sans passer par java), il trouve ce fichier qui est dans le même répertoire. Le fait de le lancer depuis java change quoi?...
la classe de lancement:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| /**
* Appel de l'executable qui va acquerir les donnees, avec synchronisation
*
* @author Mateo & JS
*/
package ressources;
//---------------------------------------------------------------------------
//Imports
import java.io.*;
//---------------------------------------------------------------------------
public class Launcher extends Thread {
private String commande;
/** Création et démarrage automatique du thread */
public Launcher(String commande) {
this. commande= commande;
this.start();
}
public void run() {
try{
Runtime run= Runtime.getRuntime();
String cmd= commande;
Process proc= run.exec(cmd);
InputStream stderr = proc.getErrorStream();
InputStreamReader isr = new InputStreamReader(stderr);
BufferedReader br = new BufferedReader(isr);
String line = null;
while ( (line = br.readLine()) != null)
System.out.println(line);
/*int exitVal =*/proc.waitFor();
}catch(Throwable t) {t.printStackTrace();}
}
} |