SETLOCAL
Startet die Begrenzung des Gültigkeitsbereiches von Änderungen.
Änderungen der Umgebung nach SETLOCAL, sind nur auf die Batchdatei
bezogen. Um die ursprünglichen Einstellungen wiederherzustellen, muss
der Befehl ENDLOCAL ausgeführt werden.
SETLOCAL
Mit den Befehlserweiterungen wird der SETLOCAL-Befehl folgendermassen verändert:
Der SETLOCAL-Batchbefehl akzeptiert jetzt als zusätzliche Argumente entweder
ENABLEEXTENSIONS oder DISABLEEXTENSIONS. Dadurch werden die Befehls-
erweiterungen bis zum entsprechenden ENDLOCAL-Befehl ein- oder ausgeschaltet,
und zwar unabhängig von vorherigen Einstellungen.
Der SETLOCAL-Befehl legt einen ERRORLEVEL fest, wenn ein Argument angegeben
wird. Dieser ist gleich Null für eines der beiden gültigen Argumente und
gleich Eins andernfalls. Das kann man in Batchprogrammen verwenden, um
festzustellen, ob die Befehlserweiterungen zur Verfügung stehen. Siehe dazu
auch folgendes Beispiel:
VERIFY OTHER 2>nul
SETLOCAL ENABLEEXTENSIONS
IF ERRORLEVEL 1 echo keine Befehlserweiterungen
Dieses Verfahren kann man verwenden, weil in älteren Versionen von CMD.EXE, der
SETLOCAL-Befehl keinen ERRORLEVEL festlegt. Der VERIFY-Befehl mit einem
ungültigen Argument initialisiert den Wert für den ERRORLEVEL mit ungleich Null.