[R] Installation automatique de logiciel
Règles du forum
- Merci de consulter la section "Règles du forum" et plus particulièrement "Règles et Mentions Légales du site autoitscript.fr" avant d'écrire un message.
[R] Installation automatique de logiciel
Bonjour,
Je suis en train de créer un script sous Autoit V3 qui permet d'installer automatiquement les logiciels (ex : openoffice) sur des machines.
J'utilise le soft Autoit Windows info qui me permet de récupérer les nom de tous les boutons,checkbox quui compose la fenêtre.
En utilisant le logiciel sur une fenêtre de l'installation de openoffice je remarque que les cases a cocher ne sont pas des checkbox mais plutôt des boutons. J'aimerais savoir comment faire pour savoir si le bouton "j'accepte" est cocher ou non comment faire?
Si il n'est pas cocher j'aimerais le faire mais comme ce n'est pas une checkbox je ne sais pas comment faire pour cocher un bouton si quelqu'un peut m'aider merci d'avance.
Je suis en train de créer un script sous Autoit V3 qui permet d'installer automatiquement les logiciels (ex : openoffice) sur des machines.
J'utilise le soft Autoit Windows info qui me permet de récupérer les nom de tous les boutons,checkbox quui compose la fenêtre.
En utilisant le logiciel sur une fenêtre de l'installation de openoffice je remarque que les cases a cocher ne sont pas des checkbox mais plutôt des boutons. J'aimerais savoir comment faire pour savoir si le bouton "j'accepte" est cocher ou non comment faire?
Si il n'est pas cocher j'aimerais le faire mais comme ce n'est pas une checkbox je ne sais pas comment faire pour cocher un bouton si quelqu'un peut m'aider merci d'avance.
Modifié en dernier par molbento le jeu. 31 juil. 2008 11:10, modifié 1 fois.
Re: [..] Installation automatique de logiciel
Peut être que je ne me suis pas bien exprimer donc je vais essayer d'etre plus clair
Lors de l'installation d'open Office le logiciel "Autoit Windows Info" permet de collecter des informations sur les interfaces graphique (par exemple on peut connaitre le nom d'un bouton).
Mon problème est j'aimerais tester si "j'accepte les termes de ce contrat de licence" est bien cocher ou non. Or d'après autoit windows info la case a cocher "j'accepte ..." est en faite un boutton.
J'ai tester les commandes :
Mais cela ne fonctionne pas !!!!!!!!!!!!!!
Help me please
Lors de l'installation d'open Office le logiciel "Autoit Windows Info" permet de collecter des informations sur les interfaces graphique (par exemple on peut connaitre le nom d'un bouton).
Mon problème est j'aimerais tester si "j'accepte les termes de ce contrat de licence" est bien cocher ou non. Or d'après autoit windows info la case a cocher "j'accepte ..." est en faite un boutton.
J'ai tester les commandes :
Code : Tout sélectionner
_GUICtrlButton_GetCheck($hWnd)
GUICtrlGetState ( [controlID] )
Help me please
-
- Niveau 6
- Messages : 289
- Enregistré le : jeu. 06 sept. 2007 11:35
- Localisation : Finistère sud
- Status : Hors ligne
Re: [..] Installation automatique de logiciel
Salut,
De toute façon sa sert quasiment a rien de testé cette partie. En effet, le logiciel seras TOUJOURS sur "j'accepte pas" donc même si sa peut être intéressant pour la suite, ici sa sert a rien...
Sinon j'ai déjà fait un script permettant l'installation automatiser de quelques logiciels :
http://www.autoitscript.fr/forum/viewtopic.php?f=6&t=81
Et mon wiki :
http://www.k1der.net/~surprise/wikipti/ ... ?id=autoit
Les scripts sont pas forcément nikel et a jour, mais ils fonctionnent :p Sa te ferras de toutes façon un bon début
De toute façon sa sert quasiment a rien de testé cette partie. En effet, le logiciel seras TOUJOURS sur "j'accepte pas" donc même si sa peut être intéressant pour la suite, ici sa sert a rien...
Sinon j'ai déjà fait un script permettant l'installation automatiser de quelques logiciels :
http://www.autoitscript.fr/forum/viewtopic.php?f=6&t=81
Et mon wiki :
http://www.k1der.net/~surprise/wikipti/ ... ?id=autoit
Les scripts sont pas forcément nikel et a jour, mais ils fonctionnent :p Sa te ferras de toutes façon un bon début
-
- Niveau 11
- Messages : 1826
- Enregistré le : lun. 23 juil. 2007 12:31
- Localisation : Bureau
- Status : Hors ligne
Re: [..] Installation automatique de logiciel
Oui des boutons radio alors
Regardez du coté de la fonction = controlcommand(titre,texte,controlid,command,option)
avec l'option ou la command check il me semble
Doit exister sur le forum des exemple pour l'auto-install, il existe aussi des parametre de l'autoinstalleur qu'on nomme silencieux.
A vous de voir le plus pratique.
Bonne continuation
Regardez du coté de la fonction = controlcommand(titre,texte,controlid,command,option)
avec l'option ou la command check il me semble
Doit exister sur le forum des exemple pour l'auto-install, il existe aussi des parametre de l'autoinstalleur qu'on nomme silencieux.
A vous de voir le plus pratique.
Bonne continuation
-
- Niveau 2
- Messages : 19
- Enregistré le : jeu. 13 déc. 2007 14:38
- Localisation : Nantes
- Status : Hors ligne
Re: [R] Installation automatique de logiciel
Salut a toi molbento,
desole si je te repond un peu tard, pour ton problème j'ai peut-etre une solution, qui est de ne pas cherche à cliquer sur tel ou tel bouton ou checkbox ou autre mais simplement d' "envoyer" via ton script des combinaison, du style fleche du haut , fleche du bas ,espace, etc,etc...
voici le script que j'ai pondu pour mon installe d'open office :
En sachant que pour moi les fichiers d'install son sur le cd (pour une install automatisée avec windows) et que je supprime les fichier temporaires,et aussi qu'il s'agit de la version 2.4 d'Open Office
Chez moi ça marche du tonnerre sur n'importe quel pc
Espérant avoir pu t'aider
desole si je te repond un peu tard, pour ton problème j'ai peut-etre une solution, qui est de ne pas cherche à cliquer sur tel ou tel bouton ou checkbox ou autre mais simplement d' "envoyer" via ton script des combinaison, du style fleche du haut , fleche du bas ,espace, etc,etc...
voici le script que j'ai pondu pour mon installe d'open office :
Code : Tout sélectionner
Opt("WinWaitDelay",100)
Opt("WinTitleMatchMode",1)
Opt("WinDetectHiddenText",1)
Opt("MouseCoordMode",0)
Opt("SendKeyDelay", 100)
;on determine le lecteur cd/dvd
$var = DriveGetDrive( "CDROM" )
run($var[1]&"\instfolder\Open office\OOo_2[1].4.1_Win32Intel_install_fr.exe")
WinWait("Préparation de l'installation de OpenOffice.org 2.4","Nous vous remercions d'avoir téléchargé OpenOffice.org 2.4.")
If Not WinActive("Préparation de l'installation de OpenOffice.org 2.4","Nous vous remercions d'avoir téléchargé OpenOffice.org 2.4. ") Then WinActivate("Préparation de l'installation de OpenOffice.org 2.4","Nous vous remercions d'avoir téléchargé OpenOffice.org 2.4.")
WinWaitActive("Préparation de l'installation de OpenOffice.org 2.4","Nous vous remercions d'avoir téléchargé OpenOffice.org 2.4.")
Send("{ENTER}")
WinWait("Préparation de l'installation de OpenOffice.org 2.4 ","Sélectionnez un dossier")
If Not WinActive("Préparation de l'installation de OpenOffice.org 2.4 ","Sélectionnez un dossier") Then WinActivate("Préparation de l'installation de OpenOffice.org 2.4 ","Sélectionnez un dossier")
WinWaitActive("Préparation de l'installation de OpenOffice.org 2.4 ","Sélectionnez un dossier")
Send("{ENTER}")
WinWait("OpenOffice.org 2.4 - Installation Wizard","Bienvenue dans l'assistant d'installation de OpenOffice.org 2.4")
If Not WinActive("OpenOffice.org 2.4 - Installation Wizard","Bienvenue dans l'assistant d'installation de OpenOffice.org 2.4") Then WinActivate("OpenOffice.org 2.4 - Installation Wizard","Bienvenue dans l'assistant d'installation de OpenOffice.org 2.4")
WinWaitActive("OpenOffice.org 2.4 - Installation Wizard","Bienvenue dans l'assistant d'installation de OpenOffice.org 2.4")
Send("{ENTER}")
WinWait("OpenOffice.org 2.4 - Installation Wizard","Contrat de licence")
If Not WinActive("OpenOffice.org 2.4 - Installation Wizard","J'accepte les termes de ce contrat de licence") Then WinActivate("OpenOffice.org 2.4 - Installation Wizard","J'accepte les termes de ce contrat de licence")
WinWaitActive("OpenOffice.org 2.4 - Installation Wizard","J'accepte les termes de ce contrat de licence")
Send("{UP}")
Send("{ENTER}")
WinWait("OpenOffice.org 2.4 - Installation Wizard","Informations client")
If Not WinActive("OpenOffice.org 2.4 - Installation Wizard","Informations client") Then WinActivate("OpenOffice.org 2.4 - Installation Wizard","Informations client")
WinWaitActive("OpenOffice.org 2.4 - Installation Wizard","Informations client")
Send("{ENTER}")
WinWait("OpenOffice.org 2.4 - Installation Wizard","Type d'installation")
If Not WinActive("OpenOffice.org 2.4 - Installation Wizard","Informations client") Then WinActivate("OpenOffice.org 2.4 - Installation Wizard","Type d'installation")
WinWaitActive("OpenOffice.org 2.4 - Installation Wizard","Type d'installation")
Send("{ENTER}")
WinWait("OpenOffice.org 2.4 - Installation Wizard","Type de fichier")
If Not WinActive("OpenOffice.org 2.4 - Installation Wizard","Type de fichier") Then WinActivate("OpenOffice.org 2.4 - Installation Wizard","Type de fichier")
WinWaitActive("OpenOffice.org 2.4 - Installation Wizard","Type de fichier")
Send("{SPACE}")
Send("{ENTER}")
WinWait("OpenOffice.org 2.4 - Installation Wizard","Prêt pour l'installation du programme")
If Not WinActive("OpenOffice.org 2.4 - Installation Wizard","Prêt pour l'installation du programme") Then WinActivate("OpenOffice.org 2.4 - Installation Wizard","Prêt pour l'installation du programme")
WinWaitActive("OpenOffice.org 2.4 - Installation Wizard","Prêt pour l'installation du programme")
Send("{ENTER}")
WinWait("OpenOffice.org 2.4 - Installation Wizard","Installhield Wizard de OpenOffice.org 2.4 terminé")
If Not WinActive("OpenOffice.org 2.4 - Installation Wizard","Installhield Wizard de OpenOffice.org 2.4 terminé") Then WinActivate("OpenOffice.org 2.4 - Installation Wizard","Installhield Wizard de OpenOffice.org 2.4 terminé")
WinWaitActive("OpenOffice.org 2.4 - Installation Wizard","Installhield Wizard de OpenOffice.org 2.4 terminé")
Send("{ENTER}")
DirRemove("C:\Documents and Settings\"&@UserName&"\Bureau\OpenOffice.org 2.4 (fr) Installation Files",1)
Chez moi ça marche du tonnerre sur n'importe quel pc
Espérant avoir pu t'aider
Re: [R] Installation automatique de logiciel
Je tombe sur la discussion des années plus tard, mais vu que le problème a éte contourné et que j'ai eu a le résoudre je poste la solution. il suffit de recupérer le handle du control avec WinGetHandle et d'appeler la variable où on a stocker tout ca avec _GUICtrlButton_GetCheck($variableDeTon Handle).
Comme un exemple vaut toujours mieux que trop de blabla, alors en voici un:
Bien entendu les controlID sont recupérés avec Windows info tool
Comme un exemple vaut toujours mieux que trop de blabla, alors en voici un:
Bien entendu les controlID sont recupérés avec Windows info tool
Code : Tout sélectionner
$Handleboutton2 = ControlGetHandle("[CLASS:#2000]","","[CLASS:Button; INSTANCE:2]")
$Handleboutton3 = ControlGetHandle("[CLASS:#2000]","","[CLASS:Button; INSTANCE:3]")
$Statusboutton2 = _GUICtrlButton_GetCheck($Handleboutton2)
$Statusboutton3 = _GUICtrlButton_GetCheck($Handleboutton3)
ConsoleWrite("Handle boutton 2 " & $Handleboutton2 & " and Handle boutton3 " & $Handleboutton3
ConsoleWrite("Ici je lis les status: " & $Statusboutton2 & " and " & $Statusboutton3 & @CRLF)
If $Statusboutton3 = 0 Then ; 0 ici n'est pas une erreur car il s'agit ici de boutton et non de checkbox 0 veut dire pas coché
ControlClick("[CLASS:#2000]","","[CLASS:Button; INSTANCE:3]")
Else ;Vous obtenez 1 comme valeur veut dire boutton coché
ConsoleWrite("Info:Le boutton 3 est déjà coché. Status = " & $Statusboutton3 & @CRLF)
EndIf
If $Statusboutton2 = 0 Then
ControlClick("[CLASS:#2000]","","[CLASS:Button; INSTANCE:2]")
Else
ConsoleWrite("Info: Le boutton 2 est déjà coché. Status = " & $Statusboutton2 & @CRLF)
EndIf
- GhostLine
- Niveau 7
- Messages : 342
- Enregistré le : jeu. 12 mars 2009 15:28
- Localisation : Paris
- Status : Hors ligne
Re: [R] Installation automatique de logiciel
As tu envisagé d'utiliser une installation silencieuse ?