Parameterübergabe an EXE mit doppelten Anführungzeichen macht Probleme

  • Hallo,

    ich muss an eine EXE Parameter übergeben, dass funktioniert eigentlich auch, aber in diesem Fall braucht der Parameter selbst ebenfalls Anführungsstriche.

    Im Hauptprogramm rufe ich eine Funktion auf mit dem Parameter $msg, der irgendeine Nachricht (Fehlermeldung, Fortschritt, etc) enthält.
    Leider wird der Text immer nur bis zum ersten Leerzeichen übertragen. In meiner Funktion habe ich jetzt vier (4!) Anführungszeichen vor und nach dem $msg Parameter gemacht und diesen dem Parameter $ldmsg zugewiesen.

    [autoit]

    func LDEcho ($msg)
    $ldmsg="""" & $msg & """"
    RunWait (@ProgramFilesDir&"\diedeldum\diedeldum.exe /msg="& $ldmsg,"")
    endfunc

    [/autoit]

    Der Workaround scheint zu funktionieren (zumindest in den ersten einfachen Tests, allerdings frage ich mich, ob es nicht eine andere, sichere, bessere, schönere Möglichkeit gibt...


    mfg
    Axel

    There exist 10 different kind of people on earth.
    Those who understand binary, and those who don't.

    Einmal editiert, zuletzt von ahe (23. Juli 2008 um 14:50)

  • Danke Xeno,

    probier' ich morgen direkt 'mal aus...

    mfg
    Axel

    There exist 10 different kind of people on earth.
    Those who understand binary, and those who don't.