Moin,

geht ganz einfach per wscript.exe als .VBS Datei.

In der Batchdatei wird das folgende "Programm" definiert
(mit GOTO :PRG_MAIN_START wird es im eigentlichen BATCH-Programm "übersprungen"

GOTO :PRG_MAIN_START

REM :WAIT_VBS!LABEL

:WAIT_VBS

IF NOT _%1==_ SET WAIT_TIME=%1

IF NOT _%WAIT_TIME%==_ ECHO WScript.Sleep (%WAIT_TIME%) >%TMP%\WAIT_VBS_%RUN_VARIANT%.VBS

IF NOT _%WAIT_TIME%==_ START /WAIT %TMP%\WAIT_VBS_%RUN_VARIANT%.VBS

IF NOT _%WAIT_TIME%==_ IF EXIST %TMP%\WAIT_VBS_%RUN_VARIANT%.V?S DEL /F %TMP%\WAIT_VBS_%RUN_VARIANT%.V?S

GOTO :EOF

:PRG_MAIN_START

Nun kann an jeder beliebigen stelle mit "CALL :WAIT_VBS Millisekunden" eine Wartezeit eingebaut werden.

Beispiel für Wartezeit 5 Sekunden

CALL :WAIT_VBS 5000

3600000 = 1 Stunden

Die Variable RUN_VARIANT wird nur benötigt, wenn man mehrere Batchprogramme parallel laufen hat, die mit der Funktion arbeiten. Sonst ist es nicht notwendig.

Wenn man den Namen der VBS-Datei mit "%Computername%_%USERNAME%" erweitert und z.B. auf dem Server ablegt, kann man sehen welcher Anwender wann welches Programm benutzt.

Ich verwende das z.B. um CAE Anwendungen parallel zu steuern. Dabei kann ich sehen, wann welcher Prozess läuft. Dadurch werden z.B. PDF-Ausgaben von Dokumentationen um den Faktor 10! beschleunigt

Die Kombination VBS und Batch läuft teilweise problemloser als Batch/Powershell

...zur Antwort