Instructions ajoutées : NOM (paramètre optionnel1) (paramètre optionnel2)
- #SET (<string varname>) (= <string value>)
- #IF (<string varname>) (= <string value>)
- #ELSE
- #FI
Exemple d'utilisation :
Code : Tout sélectionner
ConsoleWrite("On... ")
#SET debugmode = False
_main()
ConsoleWrite("This way exit. ")
Exit
Func _main()
#if debugmode = False
For $i = 1 To 3
ConsoleWrite("No ")
Next
MsgBox(0, "debugmode ?", False)
#else
# ConsoleWrite("Way. ")
# MsgBox(0, "debugmode ?", True)
#fi
EndFunc
En pièce-jointe, le code source modifié du wrappeur. Les plus gros changements étant sur la fonction Retrieve_PreProcessor_Info(), ainsi que quelques nouvelles UDFs (_SelectOpt(), ConsoleWriteLine(), etc) placées dans une #Region adéquate.
Pour l'exploiter, il faut d'abord le compiler sous un autre nom (i.e "AutoIt3Wrapper_NEW.exe"), puis le renommer à la main "AutoIt3Wrapper.exe" dans le répertoire SciTE\AutoIt3Wrapper. AutoIt3Wrapper.exe étant utilisé pour compiler les programmes, il ne peut évidemment se remplacer lui-même à la volée.
En ce qui concerne #IF, ce que j'ai trouvé de plus simple pour éviter l'exécution d'une ligne de commande, c'est d'y placer le préfixe "# ". Si vous connaissez mieux, je prends !
À noter que seul l'opérateur "=" est disponible pour les tests de #IF. Est-ce que ça vaut la peine d'en rajouter ?
Vous pensez quoi de ces opérations ?
Cordialement,
D.
P.S : Je sais que la demande n'est pas nouvelle (exemple en novembre 2010), juste je n'ai pas trouvé d'implémentations fonctionnelle, alors je l'ai fait. Vous en pensez quoi ?²
Edit 28/06/2015 : retirage de Wrapper édité. Bande de coquinous.
