iMacro auf dem Desktop ausführen

  • VBScript

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von ghe89h.

    iMacro auf dem Desktop ausführen

    Hallo Zusammen,

    ich möchte meinen Anfänger-Code-Schnipsel zusammenstellen lassen. Würde mich freuen, wenn ich dafür Hilfe bekommen könnte.

    Ich möchte mit einem Script mein iMacro "Current.iim" auf dem Desktop mit Firefox ausführen.

    In einer Batch-Datei funktioniert das:

    VB.NET-Quellcode

    1. start "" "C:\Program Files\Mozilla Firefox\firefox.exe" imacros://run/?m=Current.iim

    Jedoch nicht mit Visual Basic Script.
    Wie sollte ich den Code schreiben?
    Auf iMacros Forum gab es bisher noch keine Antwort.
    Folgendes habe ich ausprobiert, jedoch passiert damit nichts:

    Visual Basic-Quellcode

    1. Dim ws
    2. Set ws = Wscript.CreateObject("Wscript.Shell")
    3. ws.Run "C:\Program Files\Mozilla Firefox\firefox.exe imacros://run/?m=Current.iim"


    Visual Basic-Quellcode

    1. Dim ws
    2. Set ws = Wscript.CreateObject("Wscript.Shell")
    3. ws.Run "C:\Program Files\Mozilla Firefox\firefox.exe"
    4. ws.AppActivate "Firefox"
    5. ws.Run "imacros://run/?m=Current.iim"


    Visual Basic-Quellcode

    1. Dim myname, mypath
    2. myname = WScript.ScriptFullName
    3. mypath = Left(myname, InstrRev(myname, "\"))
    4. Dim iim1
    5. set iim1= CreateObject ("imacros")
    6. iret = iim1.iimOpen("current.iim")


    Visual Basic-Quellcode

    1. Option Explicit
    2. Dim iim1, iret, iret2
    3. Dim rn, i, keyword
    4. Dim j, counterup
    5. set iim1= CreateObject ("imacros")
    6. Dim macro
    7. counterup = 1
    8. macro = "CODE:VERSION BUILD=8810214 "+vbNewline
    9. i = iim1.iimOpen("-fx", true) 'Always open new instance
    10. iret = iim1.iimPlay("C:\Users\NonAdmin\Documents\iMacros\Macros")
    11. for i = 1201 to 1400
    12. iim1.iimSet "counterup", i
    13. iret = iim1.iimPlay("C:\Users\NonAdmin\Documents\iMacros\Macros")
    14. Next
    15. iret = iim1.iimExit()


    Visual Basic-Quellcode

    1. Dim ws
    2. Set ws = Wscript.CreateObject("Wscript.Shell")
    3. ws.AppActivate "Firefox"
    4. ws.sendkeys "^l"
    5. ws.sendkeys "imacros://run/?m=Current.iim"


    Was mache ich falsch und wie führe ich das Macro aus?

    Schöne Grüße,
    Dani
    Danke für deine Antwort.
    So wird es auch von iMacros vorgeschlagen. Jedoch möchte ich nicht den Makro im Ordner "C:\Users\NonAdmin\Documents\iMacros\Macros" ausführen, sondern den auf dem Desktop oder im gleichen Pfad wie die .vbs Datei, die diesen Befehl ausgibt.
    Ich habe den Skript in VBS umgewandelt, von dort aus das Makro direkt auszuführen versucht, jedoch scheitert das.

    Visual Basic-Quellcode

    1. Option Explicit
    2. Dim iim1,iret
    3. Set iim1 = CreateObject("imacros")
    4. iret = iim1.iimInit("",TRUE)
    5. Dim macro
    6. macro = "CODE:"
    7. macro = macro + "SET !ERRORIGNORE YES" + vbNewLine
    8. macro = macro + "SET !REPLAYSPEED SLOW" + vbNewLine
    9. macro = macro + "SET !ENCRYPTION NO" + vbNewLine
    10. macro = macro + "" + vbNewLine
    11. ..........
    12. iret = iim1.iimPlay(macro)


    Gibt es so eine Möglichkeit?:
    ws.Run """C:\Program Files\Mozilla Firefox\firefox.exe"" imacros://run/?m=(WieGebeIchHierMeinenPfadZumDesktopEin?)Current.iim"
    Wscript.ScriptFullName zeigt auf die VBS-Datei.
    Mittels FileSystemObject kannst du deren ParentFolder ermitteln.

    Ansonsten sind hier noch ein paar Möglichkeiten aufgezählt:
    leereid.wordpress.com/2008/03/…rent-directory-or-folder/

    Den Desktop bekommst du mit
    ws.SpecialFolders("Desktop")

    Visual Basic-Quellcode

    1. ​ws.Run """C:\Program Files\Mozilla Firefox\firefox.exe"" imacros://run/?m=" & ws.SpecialFolders("Desktop") & "\Current.iim"
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --
    Vielen Dank für deine Hilfe.
    Nach sämtlichen Versuchen habe ich festgestellt, dass iMacros eigenständig die Makros nur im Makro-Order ausführt. Damit ein Makro außerhalb dieses Ordners ausgeführt werden kann, braucht es JavaScript-Code. Damit kenne ich mich nicht aus, daher belasse ich das dabei und kopiere das Makro vom Desktop in den iMakros-Ordner.