Ayant besoin de créer "un ou plusieurs" (voir plus bas) script d'installation silencieuse en prévision du déploiement de plusieurs postes, je me suis récemment mis en tête d'en apprendre plus sur AutoIt.
L'idée finale serait de lancer une routine qui me permet d'installer X logiciels à la suite de façon autonome et silencieuse.
Afin de me familiariser avec l'outil, j'ai d'ores et déjà codé le script suivant afin de procéder à une installation de TeamViewer10.
Le bout de code suivant suscite cependant plusieurs questions :
* Ceci est une installation "automatisée" mais non pas "silencieuse" (absence de menus). AutoIt gère t-il ce type d'installation ou dois-je me contenter d'une automatisation (bien pratique) de ces installations ?
* Puis-je mettre deux scripts de ce type bout à bout afin que les installations logicielles se suivent ou bien est-il par exemple plus judicieux de dissocier les scripts d'installation et de faire créer en parallèle un batch qui va dire "Une fois tel script terminé, lance celui-la", etc.
* Lors de l'exécution du bout de code suivant, l'installation se déroule bien mais il semblerait que mon premier Else, MsgBox, EndIf créé une erreur. En effet, l'idée était que SI il y a un problème, il m'affiche l'infobulle et que si tout se passe bien (ce qui est le cas) il n'affiche rien. En l'état, même si l'installation se déroule bien, le script va générer la fenêtre informant l'utilisateur qu'une erreur s'est produite.
Le bout de code en question :
Code : Tout sélectionner
#cs ----------------------------------------------------------------------------
AutoIt Version : 3.3.12.0
Auteur: Oppenheimer
Fonction du Script :
Installation silencieuse de TeamViewer.
#ce ----------------------------------------------------------------------------
; Affiche en bas à droite un message informant du début de l'installation.
Traytip("Installation de TeamViewer","Début de l'installation de TeamViewer",1000)
; Pause de 3 secondes
Sleep(3000)
; Lance le programme d'installation
ShellExecute("Teamviewer_Setup_fr.exe")
; Le programme attend que la fenêtre d'installation soit active
WinWaitActive("Installation de TeamViewer 10","Bienvenue chez TeamViewer")
; Si la fenêtre d'installation est active alors
If WinActive("Installation de TeamViewer","Bienvenue chez TeamViewer") Then
; Met en subrillance la case "personnellement / non commercialement"
Send("{TAB 4}")
; Pause de 1 seconde
Sleep(1000)
; Coche la case "personnellement / non commercialement"
Send("{SPACE}")
; Pause de 1 seconde
Sleep(1000)
; Valide et passe au menu suivant
Send("{ENTER}")
Else
MsgBox(0,"Erreur","Problème lors de l'exécution du script !")
EndIf
; Le script attend que la fenêtre principale de TeamViewer soit active
WinWaitActive("TeamViewer","")
; Si la fenêtre principale de TeamViewer est active alors
If WinActive("TeamViewer","") Then
; Affiche en bas à droite un message informant que l'installation est terminée
TrayTip("Installation de TeamViewer","Fin de l'installation de TeamViewer",1000)
; Pause de 3 secondes
Sleep(3000)
Else
MsgBox(0,"Erreur","Problème lors de l'exécution du script !")
EndIf
Je présume que ma syntaxe est donc erronée mais je n'arrive pas à me corriger. A côté de quoi est-ce que je passe ?
Par avance, merci de votre aide