Puya: Object required

Folgender Code:

strPathExecute = Server.MapPath("uc4")
strExecute = ("UCXBXXXC.exe 30/wincrt/qi.rzs31/callrtc uc4/UC411.tmp")
strPathFile = strPathExecute & ">" & strExecute
dim wsh
set wsh = CreateObject("WScript.shell")
WScript.Sleep (2000)
wsh.Run(strPathFile)
set wsh = nothing

Nun kommt die Meldung:
Microsoft VBScript runtime error '800a01a8'

Object required: ''

Habe leider keine Ahnung warum?!

Gruß Puya

  1. Hallo,

    dim wsh
    set wsh = CreateObject("WScript.shell")
    WScript.Sleep (2000)

    Ich schätze, hier wolltest Du statt dessen lieber wsh.sleep (2000) schreiben, so wie auch in der Folgezeile:

    wsh.Run(strPathFile)

    Grüße,

    Utz

    --
    Mitglied im Ring Deutscher Mäkler
    1. Hallo Utz,

      habe ich schon versucht gehabt.
      Folgende Meldung:
      Microsoft VBScript runtime error '800a01b6'

      Object doesn't support this property or method: 'Sleep'

      Komisch, oder?

      Gruß Puya

      1. Hallo,

        Folgende Meldung:
        Microsoft VBScript runtime error '800a01b6'
        Object doesn't support this property or method: 'Sleep'
        Komisch, oder?

        Äh, nicht komisch, nein - war ein Fehler von mir, der Aufruf mit WScript.Sleep ist völlig richtig. Im Beispiel http://msdn.microsoft.com/library/en-us/script56/html/wsmthsleep.asp wird der Parameter in VBScript ohne Klammern übergeben,  vielleicht hängt's dran. Ansonsten: WSH wirklich installiert und lauffähig?

        Grüße,

        Utz

        --
        Mitglied im Ring Deutscher Mäkler
  2. Hallo,

    Folgender Code:

    strPathExecute = Server.MapPath("uc4")
    strExecute = ("UCXBXXXC.exe 30/wincrt/qi.rzs31/callrtc uc4/UC411.tmp")
    strPathFile = strPathExecute & ">" & strExecute

    'Kontrollausgabe, ob die zusammengesetzte Anweisung für die Ausführung mit Run() sinnvoll ist
       MsgBox(strPathFile)

    dim wsh
    set wsh = CreateObject("WScript.shell")

    'WScript.Sleep (2000)
                      ^Damit wird die Methode zur Funktion und will links eine Variable, der sie den Rückgabewert übergeben kann.

    WScript.Sleep 2000

    wsh.Run(strPathFile)
    set wsh = nothing

    viele Grüße

    Axel