ECHO ON-OFF Status Save und Restore
Hallo
Nicht lokale Batch-Routinen* verändern den Status aufrufenden Programms,
sofern ein ECHO ON oder OFF in der Subroutine verwendet werden.
Um dies zu umgehen muss der ECHO-Status am Eingang gesichert werden,
und beim Verlassen wieder gesetzt werden.
Dise 7 Zeilen ermöglichen es, dass der ECHO-Status im aufrufenden Programm
nicht verändert wird.
Das Test-Programm Echo-Test zeigt die Funktion für
und
Die Anzeige
Nicht lokale Batch-Routinen* verändern den Status aufrufenden Programms,
sofern ein ECHO ON oder OFF in der Subroutine verwendet werden.
Um dies zu umgehen muss der ECHO-Status am Eingang gesichert werden,
und beim Verlassen wieder gesetzt werden.
Eingang >> @Call :Echo
....
....
Am Ende >> @Echo %$Echo%
@Goto :EOF
Die Subroutine
:Echo
@Echo > %~dp0$Echo.txt
@FOR /f "tokens=1-3 delims=()" %%a in (%~dp0$Echo.txt) DO SET $Echo=%%b
@Del %~dp0$Echo.txt
@Goto :EOF
Dise 7 Zeilen ermöglichen es, dass der ECHO-Status im aufrufenden Programm
nicht verändert wird.
Das Test-Programm Echo-Test zeigt die Funktion für
Start mit ECHO ON
Start mit ECHO ON
::----------------------------------
:: DEMO
:: Subroutine :Echo on/off?
::
:: Status ECHO ON/OFF für
:: NICHT lokale Batch-Routinen
::----------------------------------
@Setlocal EnableExtensions
@CHCP 1252
@Color F0
@Echo ON & REM ECHO ON
@Echo
@Echo @Call_:Echo & REM Sichern Echo-Status
@Call :Echo
@Echo Return=[%$Echo%]
@Echo OFF
@Echo
@Echo Setze_Echo_%$Echo%
@Echo %$Echo% & REM Restore Echo-Status
@Echo
@Echo.
@Echo.
@Echo OFF & REM ECHO OFF
@Echo
@Echo @Call_:Echo & REM Sichern Echo-Status
@Call :Echo
@Echo Return=[%$Echo%]
@Echo ON
@Echo
@Echo Setze_Echo_%$Echo%
@Echo %$Echo% & REM Restore Echo-Status
@Echo
@Pause
@Endlocal
@Goto :EOF
:: ------Subroutine ----------------------------------------------------
:Echo
@Echo > %~dp0$Echo.txt
@FOR /f "tokens=1-3 delims=()" %%a in (%~dp0$Echo.txt) DO SET $Echo=%%b
@Del %~dp0$Echo.txt
@Goto :EOF
Die Anzeige
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 6250046982
Url: https://administrator.de/contentid/6250046982
Ausgedruckt am: 24.11.2024 um 02:11 Uhr