Dateien zusammenbetten

  • Hallo Leute,

    ich habe eine Frage mit der ich mich hoffentlich nicht zu sehr mit meinem Unwissen aus dem Fenster lehne ...

    Ich habe ein kleines Tool (eine .exe sonst nix), welches ich gerne über ein AutoIT-Script aufrufen will. Allerdings will ich auch beide Dateien (Tool + AutoIT-Script) gerne zu einer Datei zusammenbetten, am besten als *.exe.

    Kann mir jemand sagen, ob so etwas möglich ist?

  • hi,

    wenn ich richtig verstanden habe, schaust dir mal

    FileInstall ( "source", "dest" [, flag] )
    und
    Run ( "filename" [, "workingdir" [, flag[, standard_i/o_flag]]] )

    an.

    gruss exberliner

  • Hallo pauLee.

    Also wenn Du eine Datei mit dem Namen "muster.txt" genau da haben möchtest, wo Dein Script ist nutzt Du es so:

    FileInstall("\muster.txt", @ScriptDir)


    Wenn es nicht mehr benötigt wird bzw. Du es wieder entfernen möchtest (es bleibt aber in der Exe-Datei drinne) nutzt Du:

    FileDelete("\muster.txt", @ScriptDir).

    Aber vorsichtig. löscht Du die Datei zu früh, wird es Probleme geben. Ich selber mache es so, das ich das FileDelete zwar immer gleich mit einbaue, aber mit einem ";" erst deaktiviere und wenn das ganze Script auch als Exe-Datei läuft, dann aktiviere ich die FileDelete.

    Einen sonnigen MIttwoch wünscht,

    L I N A.

    Lieben Gruß,
    Alina

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Geheime Information: ;)
    OuBVU5ebLhHu5QvlnAyQB4A7SzBrvWulwL7RLl2BdH5tI6sIYspeMKeXMSXl

    • Offizieller Beitrag

    Hallo @Maga,

    das ist doch ein kompletter Pfad! Du meinst vllt. ein absoluter Pfad, dass ist aber ncht Pflicht!

  • Zitat von Alina


    Also wenn Du eine Datei mit dem Namen "muster.txt" genau da haben möchtest, wo Dein Script ist nutzt Du es so:

    FileInstall("\muster.txt", @ScriptDir)


    Schreibe ich dafür extra ein Script oder baue ich das in mein eigentliches Script mit ein?


    Zitat von Xenobiologist

    Hi,

    die Datei kannst nicht direkt aus der Autoitscript.exe aufrufen. Du entpackst sie auf die Platte startest sie und danach kannst du sie wieder löschen.


    Das verstehe ich nicht. Wie soll ich eine meinscript.exe entpacken und warum soll ich nach der Ausführung was löschen?
    Ich will doch, dass meinscript.au3 und speziellestool.exe zu einer Datei meinautoitscript.exe zusammengefasst werden. Da will ich als fertiges Produkt doch nicht noch mit irgend einem Dateihandling beschäftig sein.

  • Du hast ein Haupskript:
    FileInstall File2 --> entpackt die zweite Datei und bindet sie beim kompilieren mit ein .)
    Run File2
    oder
    RunWait File2
    FileDelete File2 --> geht nur, wenn File2 schon beendet ist, daher RunWait :)

    und File2:
    Mach halt was :)
    evtl Selfdelete (Scite4A: selfdelete und Leerzeichen eingeben)

  • Du hast ein Haupskript:
    FileInstall File2 --> entpackt die zweite Datei und bindet sie beim kompilieren mit ein .)
    Run File2


    Jetzt verstehe ich genau so viel wie vorher ?(

    Welche Datei soll da von wo aus entpackt werden, wenn ich die beiden Dateien in eine .exe kompiliere??

    Sorry, aber ich verstehe grad nur Bahnhof :S

  • FileInstall Fügt die Datei in die Exe ein und entpackt diese dann beim Start an den vorgegebenen Ort.
    Damit ist sichergestellt, dass der Empfänger der exe immer beide Dateien hat.
    Von dort kann dann die entpackte exe mit Run aufgerufen werden.

    Wenn die 2. Exe wieder gelöscht werden soll,:
    Deine AutoIt-Exe wartet so lange, bis die 2. Exe beendet wird (RunWait) und löscht sie dann mit FileDelete.

  • FileInstall Fügt die Datei in die Exe ein und entpackt diese dann beim Start an den vorgegebenen Ort.
    Damit ist sichergestellt, dass der Empfänger der exe immer beide Dateien hat.
    Von dort kann dann die entpackte exe mit Run aufgerufen werden.

    Wenn die 2. Exe wieder gelöscht werden soll,:
    Deine AutoIt-Exe wartet so lange, bis die 2. Exe beendet wird (RunWait) und löscht sie dann mit FileDelete.


    Danke, die Erklärung war jetzt verständlich.