Könnt ihr mal alle Nachteile für a3x Dateien nennen?
Dazu müsste man erstmal wissen, was denn a3x-Dateien überhaupt sind. Zitat aus der Hilfe:
ZitatCompiling Scripts with Aut2Exe
Note: Scripts can be compiled with .a3x extension. They should be run with AutoIt.exe filename.a3x. The .a3x contains the script itself with all referred #include plus the FileInstall files. This format allows you to distribute smaller files as they don't include the AutoIt3.exe in each compiled script. You still need to have it accessible on the target machine but just AutoIt3.exe.
Kurz zusammengefasst: Eine a3x-Datei enthält das Originalskript, alle Inludes und alle per FileInstall eingebundenen Dateien. Im Gegensatz zur exe-Datei fehlt hier aber der AutoIt-Interpreter (AutoIt3.exe). Der Interpreter muss also auf dem Zielsystem vorhanden sein.
An Nachteilen bei deinem Anwendungsfall fällt mir da gerade ein... Nehmen wir an, Du schreibst Deine ganzen Skripte für den Editor unter AutoIt 3.3.14.5. Du erzeugst dann die entsprechende a3x-Datei, von den Includes her passt alles. Jetzt führe ich diese a3x-Datei auf meinem System aus - dummerweise habe ich AutoIt nach der Erstinstallation aber nie aktualisiert, also läuft bei mir alles mit 3.3.8.1. Du benutzt jetzt in deinem Skript aber Sprachfeatures (ich meine keine UDFs!), die aus neueren AutoIt-Versionen stammen. Eine kleine Auswahl dieser Fallstricke: Ternärer Operator, leere Arrays, Direktzugriff auf Indizes von Array-Ausdrücken (sowas: StringSplit(...)[0]), das Keyword Null, ObjGet mit Instanz-Angabe... Und dann gibt es Bruch. Denn meine "alte" AutoIt3.exe kann dein neues a3x-Skript nicht ausführen. Vermutlich würde das ganze einfach mit einem Syntax Error abschmieren.
Ich schließe mich der Meinung der anderen an dieser Stelle an... Unterstütz einfach nur die aktuellste AutoIt-Version. Es gibt (fast*) keinen Grund, eine alte Version von AutoIt zu verwenden. Im Gegenteil: Solche Sachen wie der haarsträubende Hex-Fehler sind ein guter Grund, immer die aktuellste Variante zu nehmen.
* PluginOpen war schon cool...