Variable für aktuelles Verzeichnis?

  • Hi,
    ich brächte die Variable für das aktuelle Verzeichnis der gestarteten Datei.

    Mein Skript sieht so aus:

    [autoit]

    Run ("123.exe")
    WinWaitClose("%var%\123.exe")
    MsgBox(0,"A","B")

    [/autoit]

    In dieser Form mit %var% funktioniert es nicht (für var habe ich schon verschieden Variablen getestet).
    Der Skript soll von neim USB Stick ausgeführt werden, der nicht immer den gleichen Laufwerksbuchstaben hat und die Datei wird nicht unbedingt im gleichen Verzeichnis liegen.

  • Hi,

    nimm @Scriptdir. Im Hinterkopf behalten, dass die Variable das Verzeichnis ohne Backslash liefert:
    z. Bsp: FileOpen (@ScriptDir & "\meinetxt.txt", 1)

    Weiteres s. Hilfe.

    ;-))
    Stefan

  • Dazu müsste aber das Script auch im gleichen Verzeichnis liegen wie das zu startende Programm(auf dem USB Stick), oder irre ich mich?

    greetz Blade

    Weil Denken die schwerste Arbeit ist, die es gibt, beschäftigen sich auch nur wenige damit.

  • Auf mein Beispiel bezogen dann so?

    [autoit]

    Run ("123.exe")
    WinWaitClose(@ScriptDir & "\123.exe")
    MsgBox(0,"A","B")

    [/autoit]

    Das funktioniert leider nicht.

    Wenn ich

    [autoit]

    MsgBox(0,"A",@Scriptdir & "\123.exe")

    [/autoit]

    angebe, wird auch der richtige Pfad ausgegeben, trotzdem kommt die Meldung schon bevor das Programm beendet wurde.

    EDIT:
    Komisch, jetzt funktionierts ?(
    Vllt hatte ich vergessen zu speichern :whistling:

    Danke :)

    EDIT2:
    Blade: Jap muss es, aber das ist auch der Fall.

  • Hi,

    ich bin natürlich davon ausgegangen, dass er sein eigenes kompiliertes Script startet.

    ;-))
    Stefan

  • alles klar! Das war mir dann doch nicht so ganz klar :)

    greetz Blade

    Weil Denken die schwerste Arbeit ist, die es gibt, beschäftigen sich auch nur wenige damit.