DOS BATCH Problème paramètre

Fermé
Fenso - 21 oct. 2011 à 04:15
BeFaX Messages postés 14245 Date d'inscription mercredi 24 décembre 2008 Statut Contributeur Dernière intervention 6 août 2013 - 21 oct. 2011 à 12:02
Bonjour,

J'ai un petit problème avec mon batch ici présent:

@ cls
@ echo.
@ echo -------------------------------
@ echo Bottin telephonique personnel
@ echo -------------------------------
@ echo.
@ echo 1) Afficher
@ echo.
@ echo 2) Ajouter
@ echo.
@ echo 3) Supprimer le bottin
@ echo.
@ echo 4) Sauvegarder le bottin
@ echo.
@ echo 5) About
@ echo.
@ echo 6) Quitter
@ echo.
@ set /p choix=Que voulez vous faire(1,2,3,4,5 ou 6)?
@ echo.
@ If %choix%==1 call Afficher.bat
@ If %choix%==2 call Ajouter.bat
@ If %choix%==3 call Supprimer.bat
@ If %choix%==4 call Sauvegarder.bat
@ If %choix%==5 call About.bat
@ If %choix%==6 echo bebye
@ echo.
@ If %choix%==6 pause
@ If %choix%==6 exit

Voila, il y a diverses options et selon certains cas je dois afficher un message. Mais je ne peux pas faire echo + mon texte. Je dois faire avec le fichier texte ci dessous un fichier bat pour que si, par exemple, l'utilisateur choisi l'option de quitter, il s'affiche le message #05. On me dit de faire ca en paramètre mais je suis vraiment très incertain quand a la procédure a suivre. J'ai cherché sur internet et j'ai trouvé qu'il fallait peut être utiliser un goto...

----------------------------------------------------------------------------------
Ref Message
----------------------------------------------------------------------------------
#01 Le carnet est vide. Il n'y a rien a afficher. Veuillez ajouter des contacts.

#02 Le contact a ete ajoute avec succes.

#03 Le carnet a été supprimé.

#04 Choix invalide.

#05 BeBye !

#06 Le carnet a été sauvegardé.

#07 L'ajout d'un contact a échoué.

#08 La suppression du carnet a échouée.

#09 La sauvegarde du carnet a échouée, le nouveau fichier .bak n'a pas été créé.

#10 La sauvegarde du carnet a échouée, le vieux fichier .bak ne peut être supprimé.

#11 Il n'y a pas de carnet à supprimer.


Merci d'avance



1 réponse

BeFaX Messages postés 14245 Date d'inscription mercredi 24 décembre 2008 Statut Contributeur Dernière intervention 6 août 2013 3 812
21 oct. 2011 à 12:02
Pas besoin de mettre 3 fois "if %choix%==6", et aussi, pas besoin d'utiliser autant de fichiers .bat, tout peut tenir dans un seul.

Pour les messages d'erreurs, c'est pareil, ils peuvent tenir dans le fichier bat.

If %choix%==1 call afficher.bat

Au lieu de call fichier.bat, il suffit d'un goto :
:menu
...
if %choix%==1 goto affichage
if %choix%==2 goto ajout
...
:affichage
commandes d'affichage
goto menu (pour le retour au menu principal)
:ajout
commandes d'ajout
goto menu (pour le retour au menu principal)
...
0