Jump to content

Welchen Wert hat der Rückgabewert im VBS-Skript....


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Geschrieben

Guten Morgen,

 

Ich benutze folgenden Code in einem Skript:

 

Function glInstall(glpath,filepath,executecmd,progName)

on Error Resume Next

Dim WshShell

Dim Return

Dim msg

glInstall = false

glError = progName

Set WshShell = WScript.CreateObject("Wscript.Shell")

WshShell.Popup "Starting Installation von " & progName & " ...",3, progName

msg = glpath & filepath & executecmd

'Wscript.echo(msg)

progStarten = WshShell.Run(glpath & filepath & executecmd, 4, true)

 

 

if Err.Number <> 0 then 'Es sind Fehler aufgetreten

' Ende ohne Okay

MsgBox "Es ist ein Fehler in " & glError & " aufgetreten" & Err.Number & " : " & Err.Description

exit function

 

end if

Set WshShell = nothing

glInstall = true

end function

[/Quote]

 

Diesen Teil:

progStarten = WshShell.Run(glpath & filepath & executecmd, 4, true)

[/Quote]

 

habe ich aus einem Skriptbuch. Leider finde ich keinen Hinweis welchen Rückgabewert die Variable progStarten hat.

 

Hat jemand eine Ahnung was von WshShell.Run zurückgegeben wird? Ich würde es gerne für das Fehlerhandling abfangen können.

 

Gruß

 

Notesuser3

Geschrieben

normalerweise müsste er den code des jeweiligen programmes.

batch exe oder msi zurückgeben.

ich benutze das hier allerdings mit oShell.Run.

ich starte ein msi Paket mit VBS und bekomme den msi error code zurück.

 

iResult = oShell.Run (PaketStart, 1, true)

WScript.Quit(iResult)

 

jobe

Geschrieben

Das hört sich gut an. Hintergrund ist nämlich, dass durch ein Skript mehrere Installationen hintereinander gestartet werden. Ich haben zwar den Paramenter WshShell.Run(,,true) gesetzt, damit vor dem Start des nächsten Programms auf das Ende der aktuellen Installation gewartet wird, aber das scheint nicht richtig zu funktionieren. Denn es laufen nicht alle Installationen durch, das Skript bricht ohne einen Fehler auszugeben einfach ab.

 

Ich löse dass jetzt erstmal so, dass nach jeder Installation eine Datei geschrieben wird und der Computer einen Neustart durchführt. Dann prüft der Computer ob bereits eine entsprechende Datei exisitiert, falls ja startet er den nächsten Installationsschritt, am Ende werden die Datei einfach wieder gelöscht.

 

Gruß

 

Notesuser3

Geschrieben

Hi,

 

Hat jemand eine Ahnung was von WshShell.Run zurückgegeben wird? Ich würde es gerne für das Fehlerhandling abfangen können.

 

Wenn .bWaitOnReturn auf True gesetzt ist, dann wird der Rückgabewert der gestarteten Anwendung zurückgegeben, üblicherweise ist das ein Integer.

 

Tschau,

 

Sigma

Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...