Supportnet / Forum / Skripte(PHP,ASP,Perl...)
VBS - Befehl ausführen wenn CreateObject fehlschlägt?!
Frage
Hallo,
ich würde gerne einen Codeblock ausführen lassen, wenn CreateObject fehlschlägt, prinipiell würde ich das in einer einfachen if-Anweisung wie unten im Code machen. Was ist daran falsch und wie kann ich das sonst machen?
Fehlermeldung ist einfach Zeile 3 Zeichen 4 Syntaxfehler. Ich denke mal man kann in einem if Statement keine Variablen zuweisen bzw Objekte erstellen?! Bin leider absoluter VB Anfänger :D
[code]Set FSO = CreateObject("Scripting.FileSystemObject")
[b]
if(Set virtualServer = CreateObject("VirtualServer.Application", "remoteserver")) == false {
[/b]
Set sh = CreateObject("WScript.Shell")
sh.Run("\\remoteserver\c$\Treiber\vssrvc.exe -regserver")
WScript.Sleep 5000
Set virtualServer = CreateObject("VirtualServer.Application", "Asus2"
}
set vm = virtualServer.FindVirtualMachine("Zerberus")
set shutdownTask = vm.GuestOS.Shutdown
while not shutdownTask.isComplete
WScript.Sleep 1000
wend [/code]
Grüße,
Benni
Antwort 1 von gannan
es ist so wie du vermutest.
ich würds so machen:
erklärung:
"on error resume next" schaltet das automatische skriptabbrechen bei auftretenden fehler des wsh ab
"fehler=err" speichert den aufgetretenen fehler
"on error goto 0" schaltet das fehlerabbrechen wieder an
ich würds so machen:
on error resume next
set bla bla
fehler=err
on error goto 0
if fehler then
rem fehlerbehandlung
end if
erklärung:
"on error resume next" schaltet das automatische skriptabbrechen bei auftretenden fehler des wsh ab
"fehler=err" speichert den aufgetretenen fehler
"on error goto 0" schaltet das fehlerabbrechen wieder an

