Batch code retour

Résolu/Fermé
remousse Messages postés 299 Date d'inscription dimanche 2 novembre 2008 Statut Membre Dernière intervention 20 novembre 2014 - 28 juin 2012 à 09:24
remousse Messages postés 299 Date d'inscription dimanche 2 novembre 2008 Statut Membre Dernière intervention 20 novembre 2014 - 28 juin 2012 à 10:10
Bonjour,

J'ai un batch qui exécute un autre batch par un call.
J'aimerai pouvoir récupérer le code retour de mon call afin d'effectuer des actions selon ce dernier.

Voici mon code mais j'ai toujours 1 en errorlevel alors que je devrais avoir 3 car pour mes tests, le chemin C:\launch.exe n'existe pas.
Il me semble que le errorlevel de mon 1er batch correspond au code retour du call et non du batch appelé ?

1er batch:
for /f "delims=" %%i in (%1) do (
	set date=%%i
)

call reprise.bat %date%

if %errorlevel% 1 goto OK
if not %errorlevel% 1 goto KO

:OK
set /A date=%date%+1
echo %date% > %1

:KO
echo Erreur: code retour %errorlevel%


2ème batch:

set PATH=C:\
set USER=admin
set PASSWORD=password


%PATH%\launch.exe -u %USER% -p %PASSWORD%



A voir également:

5 réponses

remousse Messages postés 299 Date d'inscription dimanche 2 novembre 2008 Statut Membre Dernière intervention 20 novembre 2014 6
28 juin 2012 à 09:45
J'ai testé et voilà ce que j'ai en sortie:

Le chemin d'accès spécifié est introuvable.
3
Commande ECHO désactivée.

%PATH%\arsdoc.exe get -u %USER% -p %PASSWORD% -h %HOST% -v %GF1% -i "where DATE_EMISSION = '%DATE_EMISSION%'" -o %INDEX%
echo %errorlevel%
set return_code = %errorlevel%
echo %return_code%
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
28 juin 2012 à 09:57
et dans cet ordre, sans espaces, sinon c'est le %errorlevel% de echo qui est assigné
%PATH%\arsdoc.exe ...........
set return_code=%errorlevel%
echo %return_code%
0
remousse Messages postés 299 Date d'inscription dimanche 2 novembre 2008 Statut Membre Dernière intervention 20 novembre 2014 6
28 juin 2012 à 10:09
J'ai également testé dans cet ordre et j'ai le même résultat !
0
remousse Messages postés 299 Date d'inscription dimanche 2 novembre 2008 Statut Membre Dernière intervention 20 novembre 2014 6
28 juin 2012 à 10:10
Autant pour moi j'avais laissé les espaces.
Du coup je retourne bien 3 dans return_code.

Merci pour ton aide.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
28 juin 2012 à 09:40
hello
utiliser une autre variable ?
%PATH%\launch.exe -u %USER% -p %PASSWORD%
set code=%errorlevel%
et tester %code% dans le bat appellant
-1