bonjour a tous,
j'ecrit un batch pour realiser un menu pour installer des logiciel.le probleme c'est que mon batch me prend en compte les choix de 1 a 9 mais pas de 10 a 15.
je joint une copie du batch,
merci a tous d'avance pour votre aide
copie du batch
@echo off
:menu
cls
echo installation de logiciel
echo.
echo saisissez le num,ro correspondant au logiciel que vous souhaitez installer
echo.
echo 1: installer Microsoft Office 2003
echo.
echo 2: installer Microsoft office 2007
echo.
echo 3: installer Open Office
echo.
echo 4: installer ACID
echo.
echo 5: installer Acrobat Reader
echo.
echo 6: installer JAVA
echo.
echo 7: installer FIREFOX
echo.
echo 8: installer THUNDERBIRD
echo.
echo 9: installer FLASH PLAYER
echo.
echo 10: installer super copier
echo.
echo 11: installer XNVIEW
echo.
echo 12: installer VLC
echo.
echo 13: installer Seven Zip
echo.
echo 14: installer Internet Explorer 8
echo.
echo 15: quitter ce programme
echo.
echo ----------------------------------------------------------------------------
echo.
echo.
choice /C:123456789101112131415 veuillez saisir votre choix :
rem if %errorlevel 255 goto erreur
if %errorlevel%==1 goto office2003
if %errorlevel%==2 goto office2007
if %errorlevel%==3 goto openoffice
if %errorlevel%==4 goto acid
if %errorlevel%==5 goto acrobat_reader
if %errorlevel%==6 goto java
if %errorlevel%==7 goto firefox
if %errorlevel%==8 goto thunderbird
if %errorlevel%==9 goto flash_player
if %errorlevel%==10 goto super_copier
if %errorlevel%==11 goto xnview
if %errorlevel%==12 goto vlc
if %errorlevel%==13 goto sevenzip
if %errorlevel%==14 goto ie8
if %errorlevel%==15 goto quitter
rem :erreur
rem echo il y a une erreur
rem goto fin
:office2003
start D:/antivirus/PC-Cillin-9.03fr.exe
goto quitter
:office2007
start D:\muse\ISATIS.pdf
goto quitter
:openoffice
start D:/antivirus/PC-Cillin-9.03fr.exe
goto quitter
:acid
start D:/antivirus/PC-Cillin-9.03fr.exe
goto quitter
:acrobat_reader
start D:/antivirus/PC-Cillin-9.03fr.exe
goto quitter
:java
start D:/antivirus/PC-Cillin-9.03fr.exe
goto quitter
:firefox
start D:/antivirus/PC-Cillin-9.03fr.exe
goto quitter
:thunderbird
start D:/antivirus/PC-Cillin-9.03fr.exe
goto quitter
:flash_player
start D:/antivirus/PC-Cillin-9.03fr.exe
goto quitter
:super_copier
start D:/antivirus/PC-Cillin-9.03fr.exe
goto quitter
:xnview
start D:/antivirus/PC-Cillin-9.03fr.exe
goto quitter
:vlc
start D:/antivirus/PC-Cillin-9.03fr.exe
goto quitter
:sevenzip
start D:/antivirus/PC-Cillin-9.03fr.exe
goto quitter
:ie8
start D:/antivirus/PC-Cillin-9.03fr.exe
goto quitter
:quitter
pause
goto menu
:q
[RESOLU] probleme de prise en compte taille d'une variable
Modérateur : WIN32-[GG]
Re: probleme de prise en compte taille d'une variable
bonjour, je n'utilise pas la commande choice, mais je comprend que "12345678910111213..." soit interprété par la commande "1-2-3-4-5-6-7-8-9-1-0-1-1-1-2-1-3-...." . essaye de trouver une approche différente pour lui faire comprendre que c'est bien 10-11-12 et pas 1-0-1-1-1-2. Ou sinon utilise "set /p" .
- erfan88230
- King Of Batch
- Messages : 65
- Enregistré le : 02 avr. 2011 12:45
- Localisation : A mon avis .... quelque part dans le monde =)
Re: probleme de prise en compte taille d'une variable
Ton problème et bien que Choice ne peut pas prendre deux caractère ..
Donc:
1ère solution : Découpage de variable
2ème solution : Utiliser la commande set /p a=
Je t'explique :
Cette commande permet de demander a l'utilisateur un mot/chiffre etc... et de l'enregistrer comme une variable.
Donc a la place de Choice et de tes 15 errorlevel marque:
3ème solution:
Changer les chiffre 10 11 12 13 14 15 par des lettre simple
Donc:
1ère solution : Découpage de variable
2ème solution : Utiliser la commande set /p a=
Je t'explique :
Cette commande permet de demander a l'utilisateur un mot/chiffre etc... et de l'enregistrer comme une variable.
Donc a la place de Choice et de tes 15 errorlevel marque:
Code : Tout sélectionner
set /p a=
if %a%==1 goto office2003
if %a%==2 goto office2007
if %a%==3 goto openoffice
if %a%==4 goto acid
if %a%==5 goto acrobat_reader
if %a%==6 goto java
if %a%==7 goto firefox
if %a%==8 goto thunderbird
if %a%==9 goto flash_player
if %a%==10 goto super_copier
if %a%==11 goto xnview
if %a%==12 goto vlc
if %a%==13 goto sevenzip
if %a%==14 goto ie8
if %a%==15 goto quitter
Changer les chiffre 10 11 12 13 14 15 par des lettre simple
table des caractères utiliser par tout les ordinateur :
http://www.miakinen.net/vrac/charsets/
( section CP1252 )
table des caractères utiliser par les fenêtre MS-DOS:
http://www.miakinen.net/vrac/charsets/
(section CP850 )
http://www.miakinen.net/vrac/charsets/
( section CP1252 )
table des caractères utiliser par les fenêtre MS-DOS:
http://www.miakinen.net/vrac/charsets/
(section CP850 )
- WIN32-[GG]
- SuperBatcher
- Messages : 129
- Enregistré le : 25 avr. 2011 19:34
- Localisation : Dernière porte à droite
Re: probleme de prise en compte taille d'une variable
Autre solution; plus compliqué mais plus jolie:
Créé des "sous-menu":
Bureaucratie:
_OFFICE 2003
_OFFICE 2010
etc...
Et là tu peux utiliser choice
Créé des "sous-menu":
Bureaucratie:
_OFFICE 2003
_OFFICE 2010
etc...
Et là tu peux utiliser choice
WIN32-[GG]
The quieter you become,
the more you are able to ear...
The quieter you become,
the more you are able to ear...
Re: probleme de prise en compte taille d'une variable
merci a tous,j'ai appliquer la solution avec definitionde variable set /p et cela fonctionne,merci a tous
- WIN32-[GG]
- SuperBatcher
- Messages : 129
- Enregistré le : 25 avr. 2011 19:34
- Localisation : Dernière porte à droite
Re: probleme de prise en compte taille d'une variable
Bien, donc sujet résolu!