VBscripting mit Jump zu anderen Scripten and goBack Funktion
Unter DOs gab es den "Call"-Befehl.....
Hallo miteinander,
da hab ich heute folgende Frage zu VB-Scripting:
ich hab da ein Loginscript für Domainmembers. Das ist derzeit ellenlang und soll verkürzt werden.
Ziel ist es, für jede Abteilung ein eigenes Script für Drucker & Laufwerkmapping zu starten allerdings aus einem gemeinsamen Startscript heraus.
Facts:
ich gebe also verschiedene Standards vor im startscript "login.vbs" (Auszug)
Jetzt hab ich nun das Ziel aus diesem Startscript heraus ein Script je nach Abteilung zu starten...
...welches dann im Scriptablauf z.B. laufwerke mounted, Drucker zuweist etc. ABER: am Ende des Abteilungs-spezifischen Scripts soll das Startscript (login.vbs) weiterlaufen und zwar genau nach der Stelle des Jumps zum Abteilungsscripts.
Wie macht man das?
Danke für Ideen & machbare Vorschläge! Ach ja: bitte nicht mit anderen prgrammiersprachen kommen da mir diese durch den Mutterkonzern vorgegeben ist (also kein DOS, Java etc.)...
Danke!
Hallo miteinander,
da hab ich heute folgende Frage zu VB-Scripting:
ich hab da ein Loginscript für Domainmembers. Das ist derzeit ellenlang und soll verkürzt werden.
Ziel ist es, für jede Abteilung ein eigenes Script für Drucker & Laufwerkmapping zu starten allerdings aus einem gemeinsamen Startscript heraus.
Facts:
ich gebe also verschiedene Standards vor im startscript "login.vbs" (Auszug)
strServer = DC01
strFileserver = DC02
if isMember("Buchhaltung") then strDepartment = "Buchhaltung"
end if
if isMember("Einkauf") then strDepartment = "Einkauf"
end if
call "\\" & strServer & "\Netlogon\Departmentscripts\" & strDepartment & ".vbs" ' *"call" ist denk ich falsch; nur wie heisst das jetzt
Wie macht man das?
Danke für Ideen & machbare Vorschläge! Ach ja: bitte nicht mit anderen prgrammiersprachen kommen da mir diese durch den Mutterkonzern vorgegeben ist (also kein DOS, Java etc.)...
Danke!
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 152492
Url: https://administrator.de/forum/vbscripting-mit-jump-zu-anderen-scripten-and-goback-funktion-152492.html
Ausgedruckt am: 16.04.2025 um 01:04 Uhr
6 Kommentare
Neuester Kommentar

Hallo frankoehli!
Etwa in der Art:
Wobei der Parameter am Ende True/False bestimmt, ob das Skript warten soll oder nicht (True=Warten und False=Weiter)
Gruß Dieter
Etwa in der Art:
CreateObject("WScript.Shell").Run "..\Test.vbs", 0, True
Gruß Dieter

Hallo Frank!
Anhand Deines Call-Beispiels, dann in etwa so
Willst Du auch Parameter an das Skript übergeben? Wenn ja Beispiel posten.
Gruß Dieter
Anhand Deines Call-Beispiels, dann in etwa so
strCmdLine = """\\" & strServer & "\Netlogon\Departmentscripts\" & strDepartment & ".vbs""" 'Leerzeichen erlaubt
CreateObject("WScript.Shell").Run strCmdLine, 0, True
Willst Du auch Parameter an das Skript übergeben? Wenn ja Beispiel posten.
Gruß Dieter

Hallo Frank!
Hiermal ein praktisches Beispiel. Die Start.vbs ruft die Call.vbs mit Argumenten auf, wartet bis dessen Ausführung beendet ist und wertet den Exit-Code aus.
Start.vbs
Call.vbs
Gruß Dieter
[edit] geändert: in Call.vbs waren die Codezeilen 5 und verttauscht [/edit]
Hiermal ein praktisches Beispiel. Die Start.vbs ruft die Call.vbs mit Argumenten auf, wartet bis dessen Ausführung beendet ist und wertet den Exit-Code aus.
Start.vbs
Dim strPath, strVar1, strVar2, strCmdLine, intReturn, objShell
strPath = "E:\Test\Mit Leerzeichen\Call.vbs"
strVar1 = "Parameter1OhneLeerzeichen"
strVar2 = "Parameter2OhneLeerzeichen"
strCmdLine = """" & strPath & """" & " " & strVar1 & " " & strVar2 '= "Path" Var1 Var2
Set objShell = CreateObject("WScript.Shell")
intReturn = objShell.Run(strCmdLine, 0, True) 'Call Call.vbs (Warten auf Exit)
If intReturn = 0 Then
MsgBox "Die Call.Vbs hat den Wert 0 (OK) zurückgegeben."
Else
MsgBox "Die Call.Vbs hat den Wert 1 (Fehler) zurückgegeben."
End If
Dim strVar1, strVar2
With WScript
If .Arguments.Count <> 2 Then
MsgBox "Falsche Anzahl an Argumenten!"
.Quit 1 'Fehler ReturnValue = 1
Else
strVar1 = .Arguments(0)
strVar2 = .Arguments(1)
MsgBox strVar1
MsgBox strVar2
.Quit 0 'OK ReturnValue = 0
End If
End With
Gruß Dieter
[edit] geändert: in Call.vbs waren die Codezeilen 5 und verttauscht [/edit]