1 votes

Pourquoi la commande batch de mon choix sélectionne toujours le premier choix entier ?

J'ai créé un menu simple de choix de chiffres comme le suivant :

@echo off
CLS
:MENU
ECHO.
ECHO ...............................................
ECHO PRESS 1, 2 OR 3 to select your task, or 4 to EXIT.
ECHO ...............................................
ECHO.
ECHO 1 - Open MSOFFICE 2007
ECHO 2 - Open MSOFFICE 2010

CHOICE /N /T 10 /D 1 /C 12 /M "Press 1 for MSOFFICE 2007 or 2 for MSOFFICE2010 
Default is 1"
IF ERRORLEVEL==1 GOTO OFFICE2007
IF ERRORLEVEL==2 GOTO OFFICE2010

:OFFICE2010
C:\MSOFFICE2010.TXT

:OFFICE2007
C:\MSOFFICE2007.TXT

Mon problème est que lorsque j'appuie sur le choix "2", il ouvre le fichier du choix "1".

Qu'est-ce que je fais de mal ?

0voto

CivMeierFan Points 139

Vous avez oublié d'ajouter "%" avant et après ERRORLEVEL :

SI %ERRORLEVEL \==1 GOTO OFFICE2007 etc...

Et vous devez ajouter goto :EOF dans votre section OFFICE2010, sinon vous exécuterez les deux fichiers.

:OFFICE2010
C:\MSOFFICE2010.TXT
goto :EOF

:OFFICE2007
C:\MSOFFICE2007.TXT

0 votes

Vous avez raison mais maintenant je remarque que la fenêtre cmd ne se ferme pas même avec la commande EXIT pourquoi ?

0 votes

Parce que :EOF saute à la fin du fichier, vous pouvez ajouter la commande exit dans votre section OFFICE2010 par exemple.

0 votes

J'ai ajouté Start c : \msoffice2010.txt et la fenêtre cmd se ferme maintenant ok

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X