Bonjour.

Voilà, j'ai un programme qui me permet de lancer la commande DOS lorsqu'on clique sur un item. Lorsque la fenêtre apparait, je tape l'intitulé de mon .bat pour l'exécuter. En l'occurence, je tape "InitRef".

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
        String cmd;
        cmd=" cmd /C start cmd";
        try{
            Runtime run = Runtime.getRuntime();
            Process p = run.exec(cmd);
 
        }catch (Exception f){
            Variable.out.println("Erreur d'éxécution  :"+cmd+f.toString());
        }
Mais, pour un souci de rapidité d'utilisation je voudrais directement ouvir la fenêtre de commande DOS où s'exécuterais mon IniRef.bat.
(Le chemin de mon .bat est le suivant : "D:\\program files\\Projet TPS BNG\\guillaume\\BNG\\dist")

J'ai trouvé sur le forum une discussion similaire. Donc j'essayer le code que la personne avait proposé :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
try {
 
            myProcess = Runtime.getRuntime().exec("D:\\program files\\Projet TPS BNG\\guillaume\\BNG\\dist\\InitRef.bat");
 
		InputStream myOut = myProcess.getInputStream();
		int myStatus = -1;
		boolean ready = false;
		// --- Wait the end of the execution
 
		while (!ready) {
			try {
				myStatus = myProcess.exitValue();
				ready = true;
			} catch (IllegalThreadStateException e) {
				myOut.read();
			}
		}
        } catch (IOException ex) {
            ex.printStackTrace();
        }
Mais lorsque j'exécuter la fonction hé bien il ne se passe rien....

Merci par avance.