Wie funktioniert run in der IOM?

  • Lt. Doku ruft run einfach ein Programm auf. Naja sagt der Name ja schon ;)
    Wenn ich jetzt ein AU-File schreibe und darin steht z.B. run("setup.exe") wo sucht er dann nach der setup.exe? Im selben Ordner wie das AU-File nehme ich an.
    Jedenfalls habe ich genau so einen Fall. Die setup.exe liegt im selben Ordner wie das AU-File. Starte ich die Installation über die IOM kommt die Meldung, dass die Setup.exe nicht gefunden werden kann. Gebe ich im AU-File den kompletten Pfad an, also z.B. run("C:\Install\Programm\Setup.exe") funktioniert das ganze. Nur komplette Pfade sind schlecht, da das ganze ja von CD starten soll und das CD-Laufwerk variieren kann. Ich habs auch schon mit run("\Setup.exe") probiert. Ging auch nicht.

  • Zitat

    ShellExecute ist Run überlegen und das Makro @ScriptDir enthält den Pfad zum laufenden Skript.


    :D da möchte ich mal ne Begründung^^ :D

    • Offizieller Beitrag

    Hallo!

    ShellExecute ruft direkt die gleichnamige Windows-API-Funktion auf. Daher ist das, was diese Funktion macht, näher an dem was Windows macht und daher näher als das, was man erwartet. In aller Regel reagiert ShellExecute genau wie der Explorer oder die Ausführen-Zeile. Dazu ist die Parameterübergabe einfacher, der Pfad muss nicht in " " eingefasst werden.

    peethebee

  • Das ist falsch.
    Run unterstützt genauso Parameter.
    Dafür ist, im Gegensatz zu ShellExecute, nur einfach kein Extra-FunktionsParameter vorgesehen.
    Die Parameter werden direkt mit hinter den Aufruf geschrieben, wie man es von der Kommandozeile her kennt.

    Ich persönlich setze zum Aufruf von Exe-Dateien meistens noch Run ein weil ich dann damit im Gegensatz zu ShellExecute gleich die ProcessID als Rückgabewert erhalte.

  • hallo @ all
    also ich habe ja diesen traed gelesen und dachte mir ich versuche es mal mit ShellExecute(@ScriptDir & "\TU2007TrialDE.exe")bekomme hier immer diese "sicherheitswarnung", obwohl ich IsAdmin() drin habe, mit Run kommt diese sicherheitswarnung nicht, ist das programmspeziell, der aufruf, denn ich bekomme die sicherheitswarnung nicht weg, ob send, oder controlclick, nix funtzt.
    peethebee ohne ShellExecute funtzt dein tip mit IsAdmin()

    d2po88

  • hallo @ all

    nein peethebee, ich arbeite nicht unter vista, mein vista64 ultimate, dort laufen leider nicht alle programme, leider bekommt man von, pinacel, oder macix nur zum bsp. für meine programme nur ungenuegent support. oft melden andere programme, soll den emu ausschalten, den vista 64 emuliert ja nur die umgebung von 32 bit anwendungen, und ob ich wieder alles kaufe, kost ne stange geld, ueberleg ich mir jetzt 3 x, mein sohn beginnt sein studium , das kostet uns auch ne menge kohle!

    aber der hauptgrund ist, das scribten muss ich erst mal ein wenig verstehen, und ich weiss sehr wenig!!! deshalb bleib ich erst mal beim xp.

    d2po88 :D

  • Zitat

    Original von d2po88also ich habe ja diesen traed gelesen und dachte mir ich versuche es mal mit ShellExecute(@ScriptDir & "\TU2007TrialDE.exe")bekomme hier immer diese "sicherheitswarnung", obwohl ich IsAdmin() drin habe, mit Run kommt diese sicherheitswarnung nicht, ist das programmspeziell, der aufruf, denn ich bekomme die sicherheitswarnung nicht weg, ob send, oder controlclick, nix funtzt.
    peethebee ohne ShellExecute funtzt dein tip mit IsAdmin()

    das hat mit admin-Berechtigungen nichts zu tun. Der Aufruf über run ist irgendwo anders als der über shellExecute. Wenn du das per Doppelklick startest müsste auch die Sicherheitswarnung kommen. Und die kommt egal was man für Berechtigungen hat. Ich glaube man kann sie höchstens irgendwo in der Registry abstellen.

  • Hallo @ all
    ich habe zwar nicht viel ahnung, vom scriben, jedoch habe ich es gestern versucht, unter XP, versuch es mal und du wirst den unterschied erkennen, ich habe hier berichtet was mir aufgefallen ist, zwichen ShellExecute und Run!!!
    auch habe ich im inet gesucht, nur weiss ich nicht ob mann das einsetzen kann in AutoIt, mueste sich jemand mit ahnung mal anschauen, und probieren. [URL=http://www.todt.at/erich/download/samples/foxpro/shellexecute.htm] und [URL=http://www.cbuilder.de/artikel/progstarten/ShellExecute.html]

    d2po88