if imbriqués, perte de données dans les variables '?'
Bonjour,
Ça fait deux heures que j'essaie de résoudre le mystère, mais décidément je suis dans une impasse. En gros, je n'ai plus accès à %MESSAGE% dans mon dernier bloc IF imbriqué! Ça fait du charabia par la suite.
Est-ce que quelqu'un vois une solution?
voici mon code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
|
SETLOCAL ENABLEDELAYEDEXPANSION
set MESSAGE=AAAAAH! PAS DE BON SENS, ALLERGIES AUX BOGUES
IF %MESSAGE:~0,5% == AAAAA (
ECHO ÇA CRAINT!
)ELSE (
IF %MESSAGE:~17,3% == ALL (
FOR /F "tokens=1* delims= " %%A in ("%MESSAGE%") DO (
echo ÇA SCHLINGUE!
)
)ELSE (
IF %MESSAGE:~35,3% == AUR (
FOR /F "tokens=1,2,3* delims= " %%C in ("%MESSAGE%") DO (
ECHO ÇA ME FOU LA POISSE
)
)ELSE (
IF %MESSAGE:~0,6% == DEVELO (
FOR /F "tokens=* delims= " %%H in ("%MESSAGE%") DO (
ECHO COUCOU
)
)ELSE (
IF %MESSAGE:~0,4% == MAIS (
FOR /F "tokens=* delims= " %%H in ("%MESSAGE%") DO (
ECHO BIDON
)
)ELSE (
set COCO=BIENVENUE DANS LE TRIANGLE DES BERMUDES!!!
set CACA=ICI SE TROUVE UN MYSTÈRE DANS UNE CHARADE
ECHO %MESSAGE%
echo %COCO%
echo %CACA%
REM JE N'AI PLUS ACCES A LA VARIABLE %MESSAGE% ! EN PLUS CES DEUX VARIABLES SONT NULLES POURTANT NOUS VENONS DE LES AFFECTER...
pause
IF /I "%COCO%"==BIENVENUE DANS LE TRIANGLE DES BERMUDES!!! (
rem CE BLOC IF FAIT PLANTER LE PROGRAMME AVEC UN CAS DU 1er BLOC
FOR /F "tokens=* delims= " %%H in ("%MESSAGE%") DO (
echo WELCOME TO MY WORLD %%H
)
)
)
)
)
) |
:pc::mur: