Bat und vbs Datein?

2 Antworten

Erstmal:

Verwende für Windows-Batchdateien die Endung .cmd . .bat versetzt dem Kommandointerpreter in einen alten Dos-kompatiblen Emulationsmodus, welcher mit einem fehlerhaften Errorhandling arbeitet. https://stackoverflow.com/a/148991

Für den Aufruf von vbs-Dateien gibt es zwei Modi:

Konsol-Modus:

cscript "meineDatei.vbs"  optionale Parameter

...der Output de von WScript.Echo "Hallo Welt" erfolgt in die Console.

Window-Modus:

wscript "meineDatei.vbs"  optionale Parameter

der Output erfolgt in temporäre Dialogfenster.

demo.cmd

@echo off
 rem erzeuge kleines VBScript.
echo WScript.Echo "Hallo Welt">"test.vbs"
echo Das Folgende wird vom VBS in die Console geschrieben:
cscript /nologo "test.vbs"
timeout 2  &rem 2 sekunden warten
echo VBS im Dialog Modus
wscript "test.vbs"
echo fertig
pause

Eine andere Batch ruft man mit

call "andereBatch.cmd"  optionale Parameter

auf.

batch2.cmd

echo ich bin  Batch2

batch1.cmd

@echo off
echo ich rufe Batch2
call "batch2.cmd"
echo wieder in batch1
pause 

Ruft man eine andere Batch ohne call auf kehrt diese nicht zum Aufrufer zurück!

Allerdings kannst Du Dir das verwalten mehrerer Batchedateien sparen, wenn du Subroutinen verwendest

@echo off
echo ich bin die Hauptroutine
call :Subroutne1
echo wieder in Hauptroutine
pause 
exit /b

:Subroutne1
echo ich bin die subroutine
exit /b
Woher ich das weiß:eigene Erfahrung – Ich mach das seit 30 Jahren