Code de retour d'un batch windows

Code de retour d'un batch windows - Java - Programmation

Marsh Posté le 01-12-2005 à 12:12:16    

Bonjour,
 
J'essaye de récupérer le code de retour d'un batch Windows lancé en Java.
Je fait donc quelque chose comme ca:

Code :
  1. String command = "toto.bat";
  2. Process process = Runtime.getRuntime().exec(command);
  3. int exitValue = process.waitFor();


Dans mon fichier 'toto.bat' je fait ca:

Code :
  1. blabla


 
Si je lance mon programme, ma variable exitValue vaut toujours 0, alors que la commande ne fonctionne pas.
J'ai donc modifier mon batch pour bien faire remonter le code de retour de la commande.

Code :
  1. blabla
  2. exit %ERRORLEVEL%


 
Maintenant cela fonctionne, je récupère bien le code de retour.
Mais le nouveau problème est que si je lance mon batch en ligne de commande, mon interpreteur se termine à cause du exit.
 
J'ai donc remodifié mon batch en rajoutant une option à exit:

Code :
  1. blabla
  2. exit /b %ERRORLEVEL%


Cette fois ci l'interpreteur ne quitte plus, mais mon code de retour ne remonte plus dans Java  :??:  
 
J'ai recherché sur le net, j'ai trouvé d'autres personnes qui ont le même problème, mais pas de solution...


---------------
Light is right
Reply

Marsh Posté le 01-12-2005 à 12:12:16   

Reply

Marsh Posté le 02-12-2005 à 11:10:40    

Une solution possible serait de passer un parametre en entrée de ton batch quand tu l'appelles par Java.
 
et dans le batch, si le parametre est présent, tu fais un exit sans option

Reply

Marsh Posté le 02-12-2005 à 11:48:18    

Oui c'est que j'ai fait finalement.
Ce n'est pas très clean mais ca marche  :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed