Cette section r�pond � quelques unes des questions les plus fr�quemment pos�es dans le forum. Si vous ne pouvez pas trouver la r�ponse que vous cherchez ici, alors le forum doit �tre votre premier point d'appel.
Si vous voulez lancer quelque chose comme une commande DOS "Dir" alors vous devez le faire par l'interpr�teur de commandes (command.com ou cmd.exe selon votre OS). La macro@ComSpec contient l'emplacement exact de ce fichier. Vous devriez utiliser la fonctionRunWait() qui attend la fin du programme DOS avant de passer � la ligne de script suivante. Voici un exemple d'ex�cution de la commande DOS sur le disque C: (qui lan�e effectivement la commandeCommand.com /c Dir C:\)
RunWait(@ComSpec&" /c Dir C:\")
Seulement quelques extensions de fichiers sont habituellement "ex�cutable" - ce sont les .exe, .bat, .com, .pif. Les autres types de fichiers comme .txt et .msi sont actuellement ex�cut�s avec un autre programme. Lorsque vous double-cliquez sur un fichier "MonFichier.msi", c'est la commande "Msiexec.exe MonFichier.msi" qui est ex�cut�e en arri�re-plan. Donc pour lancer un fichier .msi � partir d'AutoIt, vous devriez faire :
RunWait("msiexec MonFichier.msi")
Ou, lancer la commande "Start" qui saura automatiquement comment ex�cuter le fichier pour vous :
RunWait(@ComSpec&" /c Start MonFichier.msi")
Ou, utiliser la fonction ShellExecuteWait qui saura automatiquement comment ex�cuter le fichier pour vous:
ShellExecuteWait("MonFichier.msi")
Si vous voulez utiliser des guillemets � l'int�rieur d'une cha�ne, alors vous devez "les doubler". Donc pour chaque guillemet que vous voulez, vous devez en mettre deux. Par exemple, si vous vouliez d�clarer une variable avec la cha�ne:Un mot dans "cette" phrase est entre guillemets ! Vous devriez faire :
$var="Un mot dans ""cette"" phrase est entre guillemets !"
ou utilisez des apostrophes � la place :
$var='Un mot dans ""cette"" phrase est entre guillemets !'
Il y a une description d�taill�eici.
Si vous avez une variable nomm�e $msg et que vous voulez l'afficher dans une MsgBox alors cela ne marchera PAS :
#include<MsgBoxConstants.au3>En l'�tat, cela afficheraMa variable est $msg. Pour y arriver, dire � AutoIt de joindre la cha�ne et la variable ensemble en utilisant l'op�rateur& operator:
#include<MsgBoxConstants.au3>
MsgBox($MB_OK,"Exemple","Ma variable est "&$msg)
Mode avanc�: Si vous avez beaucoup de variables � ins�rer dans une cha�ne, alors vous trouverez utile la fonctionStringFormat(). Par exemple, si je voulais ins�rer $var1 � $var5 dans une cha�ne, il serait plus facile de faire:
#include<MsgBoxConstants.au3>
$msg=StringFormat("Var1 est %s, Var2 est %s, Var3 est %s, Var4 est %s",$var1,$var2,$var3,$var4)
MsgBox($MB_OK,"Exemple",$msg)
Si vous utilisezSend pour envoyer le contenu d'une variable, attention si il contient des caract�res sp�ciaux comme ! ^ + {SPACE} car il seront consid�r�s comme des raccourcis-clavier sp�ciaux - Rarement ce que l'on attend. Pour contourner le probl�me, utilisez le mode RAW deSend() qui ne traduit pas les touches sp�ciales :
Send($mavariable,1)
G�n�ralement une valeur de retour est utilis�e pour signaler la r�ussite d'une fonction. Mais, si une fonction est d�j� en train de retourner quelque chose (CommeWinGetText() ) alors nous aurons besoin d'une autre solution pour savoir si la fonction a r�ussi sa mission, en attribuant une valeur � @error.
Ah, c'est tr�s facile. Si vous d�sirez faire stopper un script quand vous pressez une certaine combinaison de touches, alors utilisez la fonctionHotKeySet() pour lancer une fonction utilisateur quand la touche d�sir�e est press�e. Cette fonction utilisateur devra juste contenir la commande de sortieExit.
Voici un code qui interrompra le script quand vous presserez CTRL+ALT+x :
HotKeySet("^!x","Sortie")
...
...
; Le reste du script
...
...
FuncSortie()
Exit
EndFunc ;==>Sortie
Vous devez ouvrir le programme complet de compilation (au lieu de simplement faire un clic droit sur un script et de s�lectionner Compile).Cette page d�crit le compilateur en d�tail.
Utilisez la fonction_Singleton(). Voir la documentation des Fonctions (UDF) pour plus de d�tails sur _Singleton() et comment l'utiliser.
SVP, consultez la sectionLimites et D�fauts pour les limites techniques de AutoIt3.
Information suppl�mentaire sur les limites th�oriques de AutoIt3.
Valeur | Description |
---|---|
Pas de limite | Nombre maximum de fen�tres GUI. |
Pas de limite | Nombre maximum de fonctions en cours d'utilisation. |
Pas de limite | Nombre maximum de variables en cours d'utilisation � un instant donn�. |
1.7E308 � 1.7E+308 | Pr�cision des nombres (� virgule flottante) de 15 chiffres. |
0x8000000000000000 � 0x7FFFFFFFFFFFFFFF | Pr�cision des nombres hexad�cimaux (entier sign� 32-bit/64-bit). |
Ceci devrait �tre le bouton vous permettant d'ouvrir les exemples dans le fichier d'aide.
Ce probl�me est d� au fait que le fichier hhctrl.ocx n'est pas correctement enregistr� ou corrompu.
Essayez de l'enregistrer en faisant "regsvr32 hhctrl.ocx" � partir de l'invite de commande, ou v�rifiez sa validit�.