Erkennen von .au3 Files, welche nicht automatisch compiliert werden sollen

  • Hallo,
    ich habe ein kleines Skript geschrieben, welches mir gute Dienste leistet. Es kompiliert alle .au3 Files, die in einem Ordner (und deren Unterordner) liegen.
    Funktioniert mit Hilfe von Aut2exe.exe wunderbar.
    Nun ist es aber so, dass später nicht jedes .au3 Modul eine .exe werden kann.
    Wie kann ich das dem Compiler klar machen, dass er es nicht kompilieren muss?

    Mit #NoAutoIt3Execute kompiliert er das File trotzdem zu einem .exe (es lässt sich sogar ausführen).

    Kennt ihr eine Möglichkeit, oder muss ich eine Liste führen, wo ich eintrage, welches File nicht compiliert werden darf...
    Grüße

    Einmal editiert, zuletzt von dost0011 (2. Mai 2014 um 13:48)

  • Mit #NoAutoIt3Execute kompiliert er das File trotzdem zu einem .exe (es lässt sich sogar ausführen).

    Ähm ja. Die PreCompiler Anweisung "#NoAutoIt3Execute" besagt ja auch nur, dass das zu kompilierende Script später nicht in der Lage ist selbst au3-Dateien auszuführen / zu interpretieren, was normalerweise über die Parameter "/AutoIt3ExecuteLine" oder "/AutoIt3ExecuteScript" mit jedem kompilierten Autoitscript möglich ist. Mehr dazu findest du in der Hilfe: http://translation.autoit.de/onlinehilfe/in…htm#CommandLine


    Zu deinem Problem:

    Ich verstehe den Sinn deines Scriptes zwar nicht, aber es würde wohl schon helfen wenn du deine Dateien vernünftig organisierst. Sprich alle au3 Dateien die nicht kompiliert werden sollen und folglich wohl nur als include in anderen au3 Dateien verwendet werden würde ich eben in einem Include Unterordner organisieren. Dein Script übergeht dann einfach alle au3 Dateien die sich in solch einem Unterordner befinden.

    Alternativ könntest du natürlich auch alle au3 Dateien eines Porjektes parsen und prüfen welche Datei bereits in anderen Dateien inkludiert wird und dementsprechend gewisse Dateien ausschließen.

  • Das mit dem Include Ordner werde ich machen. Ich dachte, dass es vielleicht irgendeinen Befehl gibt, der dem Compiler sagt, dass er dieses File nicht zu einem .exe Compilieren muss.
    Aber so geht es genauso. Danke.