Compiler un Script avec Aut2Exe

Il est possible de compiler votre script .au3 en un exécutable autonome; cet exécutable peut être utilisé sans avoir besoin d'installer AutoIt et sans avoir besoin de AutoIt3.exe sur la machine. Le processus de compilation convertit le script et ses fichiers #include, ainsi que quelques fichiers ajoutés par la fonction FileInstall, en un seul fichier qui est compressé et encrypté. De cette façon, aucun de ces fichiers additionnels sont requis à l'exécution. Suivant les options de compilation choisies, ce script "compilé" sera, soit inséré dans les ressources d'un interprèteur exécutable autonome qui l'exécutera directement, soit enregistré dans le format .a3x . Un fichier .a3x peut être inclus dans un autre script ou exécuter par un interprèteur de AutoIt - soit AutoIt3.exe lui-même, soit un autre script compilé avec le paramètre AutoItExecuteAllowed.

  

Attention: le script à compiler doit être exempt d'erreurs de syntaxe car le processus de compilation ne vérifie pas la syntaxe </ p>

Aut2Exe peut être utilisé de trois manières différentes :

Méthode 1 - Menu Démarrer

Seulement disponible si l'installation complète à été exécutée.

1.  Ouvrez le menu Démarrer et allez au groupe AutoIt v3.

2.  Cliquez Compile Script to .exe

3.  L'interface principale Aut2Exe devrait apparaître.

       

4.  Utilisez le bouton Browse pour sélectionner votre source (.au3) et votre fichier final (.exe).

5.  Si vous le désirez vous pouvez changer l'icône du fichier .exe final - naviguez simplement jusqu'à l'icône voulue (des icônes exemples sont fournis dans Program Files\AutoIt3\Aut2Exe\Icons).

6.  La seule autre option que vous pourriez souhaiter modifier est le taux de compression (particulièrement si vous utilisez la fonction FileInstall pour ajouter des fichiers supplémentaires).  Utilisez le menu Compression pour le régler. Comme pour toute routine de compression, plus vous choisirez un taux élevé, plus la routine sera lente. Quoi qu'il en soit, quel que soit le taux de compression choisi, la vitesse de décompression (quand le fichier .exe est lancé) est la même.

7.  Cliquez sur Convert pour compiler le script.

Note: Les scripts peuvent être compilés avec l'extension .a3x. Ils doivent être exécutés avec la commande "AutoIt.exe filename.a3x". Les fichiers .a3x contiennent le script lui-même ainsi que les fichiers #include et ceux des FileInstall. Ce format permet de distribuer des fichiers plus petits car ils n'incluent pas le fichier Autoit3.exe. Vous devez toujours avoir le fichier accessible sur la machine où le script s'exécutera, mais uniquement le fichier Autoit3.exe.


Méthode 2 - Clic droit

Uniquement disponible avec une installation complète de AutoIt.

1.  Dans l'explorateur, recherchez le fichier .au3 que vous souhaitez compiler.

2.  Faites un clic droit sur le fichier pour afficher le menu.

       

3.  Le fichier sera compilé silencieusement avec le même nom de fichier, juste avec l'extension .exe.

En compilant de cette façon, Aut2Exe utilise les mêmes paramètres actuels d'icône et compression (Ceux qui avaient été utilisés lors de la dernière exécution de Aut2Exe selon la méthode 1).


Méthode 3 - La ligne de commandes

Le programme Aut2Exe.exe peut être lancé en ligne de commande comme ceci :

    Aut2exe.exe /in <MonScript.au3> [/out <MonSript.exe>] [/icon <MonIcone.ico>] [/comp 0-4] [/nopack] [x64] [/bin <binfile.bin>]

Commutateur Utilisation Valeur par défaut
/in <infile.au3> Spécifie le chemin et le nom du fichier de script à compiler. Aucun. Le fichier doit être spécifié
/out <outfile.exe> Spécifie le chemin et le nom du fichier compilé.
<outfile.a3x> Spécifie le chemin et le nom du fichier lors de la création d'un fichier *.a3x.
Le nom du fichier d'entrée avec .exe pour extension
/icon <iconfile.ico> Spécifie le chemin et le nom du fichier de l'icône à utiliser pour le fichier compilé. L'icône par défaut, celle de AutoIt
/comp Spécifie le niveau de compression à utiliser lors de la compilation du script (AUCUN rapport avec UPX).
Doit être un nombre entre 0 (aucune) et 4 (maximum).
2
/nopack Spécifie que le fichier ne doit pas être compressé avec UPX après la compilation. pack
/pack Spécifie que le fichier doit être compressé avec UPX après la compilation. pack
/x64 Spécifie que le script doit être compilé pour être utilisé sur les systèmes d'architecture x64. Voir notes
/x86 Spécifie que le script doit être compilé pour être utilisé sur les systèmes d'architecture x86 (32-bit). Voir notes
/console Spécifie que le script doit être compilé comme une application Console. Application Windows (/gui)
/gui Spécifie que le script doit être compilé comme une application Windows. Application Windows (/gui)

Exemples de Ligne de Commande

/in c:\monscript.au3 /out c:\monapp.exe /icon c:\monicon.ico /x64

Aura pour résultat la création de c:\monapp.exe avec une compression normale qui utilisera l'icône spécifiée et sera compilé pour une utilisation sur des systèmes d'architecture x64.

/in c:\monscript.au3

Aura pour résultat la création de c:\monapp.exe en unicode avec une copression normale qui utilisera l'icône par défaut de AutoIt pour une utilisation sur des systèmes win_32.

Notes de la Ligne de Commande

Les noms de fichiers longs doivent être entourés de guillemets comme  "C:\Program Files\Test\test.au3". .

À l'exception de /in tous les commutateurs sont facultatif.

Par défaut, le compilateur 32-bit produit un binaire 32-bit et le compilateur 64-bit produit un binaire 64-bit. Utilisez les paramètres /x86 et /x64 pour spécifier explicitement la sortie.

Les commutateurs /pass et /nodecompile sont superflus à partir de la version 3.2.8.1. Ils seront ignorés si utilisés et ont été enlevés de cette liste.

Les commutateurs /ansi and /unicode sont superflus à partir de la version 3.3.0.0.

Le commutateur /bin est superflu à partir de la version 3.3.10.0 et a été enlevé de cette liste..

Détails techniques

Le script compilé et les fichiers ajoutés avec la fonction FileInstall sont compressés avec mon propre (Jon) schéma de compression.