Rückgabewerte einer Batch an die aufrufende Batch
Hallo,
ich würde gerne eine elegante Möglichkeit erfahren, wie von einer Batch ein Wert an die aufrufende Batch übergeben werden kann:
Bekannt sind mir nur folgende Verfahren:
-"Rückgabe" via globaler Variable etwas unschön
-"Rückgabe" via Textfile noch schlechter
Beispiel:
BatchMain:
:: Batchsub macht beliebige Berechnungen, Datenbankabfragen, Benutzereingaben etc und gibt 0 oder 1 zurück
CALL BatchSub
::hier soll der Returncode abgefragt werden
::Wenn man es in %ERRORLEVEL% bekäme, wäre am besten
Das muss ab WinServer 2008R2 laufen. Powershell und wscript ist nicht erlaubt.
ich würde gerne eine elegante Möglichkeit erfahren, wie von einer Batch ein Wert an die aufrufende Batch übergeben werden kann:
Bekannt sind mir nur folgende Verfahren:
-"Rückgabe" via globaler Variable etwas unschön
-"Rückgabe" via Textfile noch schlechter
Beispiel:
BatchMain:
:: Batchsub macht beliebige Berechnungen, Datenbankabfragen, Benutzereingaben etc und gibt 0 oder 1 zurück
CALL BatchSub
::hier soll der Returncode abgefragt werden
::Wenn man es in %ERRORLEVEL% bekäme, wäre am besten
Das muss ab WinServer 2008R2 laufen. Powershell und wscript ist nicht erlaubt.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 385796
Url: https://administrator.de/contentid/385796
Ausgedruckt am: 25.11.2024 um 04:11 Uhr
2 Kommentare
Neuester Kommentar
Im zweiten Skript einfach deinen ReturnCode zurückgeben mit
Im ersten Skript kannst du dann nach der CALL Zeile den Errorlevel wie gehabt abfragen.
Beispiel
batch1.cmd
batch2.cmd
Bitte mal auf der Konsole exit /? eingeben und du bist schlauer .
exit /b 255
Beispiel
batch1.cmd
@echo off
call batch2.cmd
echo ResultCode: %ERRORLEVEL%
@echo off
exit /b 255
Bitte mal auf der Konsole exit /? eingeben und du bist schlauer .