Si les extensions de commandes sont activées, SETLOCAL est modifié comme suit : La commande SETLOCAL accepte maintenant un ...

Si les extensions de commandes sont activées, SETLOCAL est modifié comme suit :  La commande SETLOCAL accepte maintenant un argument optionnel :         ENABLEEXTENSIONS / DISABLEEXTENSIONS             active ou désactive les extensions de commandes. Entrez             CMD /? pour plus de détails.         ENABLEDELAYEDEXPANSION / DISABLEDELAYEDEXPANSION             active ou désactive l'expansion des variables d'environnement             retardées. Entrez SET /? pour plus de détails. Ces modifications sont actives jusqu'à l'exécution de la commande ENDLOCAL correspondante, sans tenir compte de leur état avant l'instruction SETLOCAL.  La commande SETLOCAL fixera  la valeur ERRORLEVEL si elle reçoit un argument. Ce sera zéro si un des deux arguments valides est donné, et 1 sinon. Vous pouvez vous en servir dans les fichiers de commandes pour déterminer si les extensions sont disponibles, en utilisant la technique suivante :      VERIFY OTHER 2>nul     SETLOCAL ENABLEEXTENSIONS     IF ERRORLEVEL 1 echo Impossible d'activer les extensions  Cela marche, car sur les anciennes versions de CMD.EXE, SETLOCAL NE fixe PAS la valeur de ERRORLEVEL. La commande VERIFY avec un argument non valide initialise ERRORLEVEL à une valeur non nulle.