[..] Installation d'un logiciel automatisé... (Lotus)

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
tipiaks
Niveau 1
Niveau 1
Messages : 6
Enregistré le : mar. 22 sept. 2009 12:25
Status : Hors ligne

[..] Installation d'un logiciel automatisé... (Lotus)

#1

Message par tipiaks »

Bonjour,

Je possède un parc de 200 machines, j'aimerais automatiser l'installation d'un fixpack de lotus qui correspond à un service pack d'un Windows par exemple.
Mon script fonctionne bien (je débute... il est ultra simpliste...) mais je ne connais pas la fonction qui me permet d'attendre qu'une action soit réaliser pour lancer l'action suivante. Je m'explique avant d'envoyer par exemple un "!f" je voudrais attendre que l'action en cours soit terminer dans mon cas l'installation du programme...

Voici mon script :

Code : Tout sélectionner

run("\\serveur01\fichiers\lotus\setup.exe")
winwaitactive("IBM Lotus Notes 8.5 FP1 - InstallShield Wizard")
sleep(2000)
Send("{Enter}")
sleep(1000)
Send("!a") 
Send("{Enter}")
sleep(1000)
Send("{Enter}")
sleep(1000)
Send("{Enter}")
winwaitactive("IBM Lotus Notes 8.5 FP1 - InstallShield Wizard")
Send("!f")
 
Et je voudrais donc attendre que l'installation soit terminer avant d'envoyer le !f à la fin pour fermer la fenêtre du programme...

Merci de votre aide.
Modifié en dernier par tipiaks le mar. 22 sept. 2009 15:51, modifié 2 fois.
Avatar du membre
jbnh
Niveau 11
Niveau 11
Messages : 1932
Enregistré le : ven. 02 mai 2008 14:54
Localisation : Bruxelles
Status : Hors ligne

Re: Installation d'un logiciel automatisé... (Lotu

#2

Message par jbnh »

Bienvenu sur le forum !

Avant que nous puissions vous répondre, vous devriez lire les règles de présentation des messages ainsi que les règles générales du forum puis éditez votre premier message pour ajouter les balises [..] au titre de votre sujet.
Balise [..] devant votre requête en cours, [R] quand résolu | Pas de message concernant les bots !

Merci
tipiaks
Niveau 1
Niveau 1
Messages : 6
Enregistré le : mar. 22 sept. 2009 12:25
Status : Hors ligne

Re: [..] Installation d'un logiciel automatisé... (Lotus)

#3

Message par tipiaks »

Message re-éditer :)

Si vous avez une idée pour ma question se serais très sympa.

Edit : Je précise que je ne peux pas utiliser la fonction "sleep" car le temps d'installation varie d'un poste à un autre.
tipiaks
Niveau 1
Niveau 1
Messages : 6
Enregistré le : mar. 22 sept. 2009 12:25
Status : Hors ligne

Re: [..] Installation d'un logiciel automatisé... (Lotus)

#4

Message par tipiaks »

J'essaye de continuer un peu mon analyse...

Serais t'il possible de résoudre mon problème en faisant une sorte de boucle comme celle-là :

Code : Tout sélectionner

While Not BitAnd(Wingetstate("Finish"),15)
    Sleep(100)
WEnd
 
Mais en indiquant que c'est lorsque le "bouton 1" (renseignement obtenu grâce à Autoit v3 Windows info) affiche finish qu'il faut lancer le "send" ?


Merci pour votre future aide.
Avatar du membre
jbnh
Niveau 11
Niveau 11
Messages : 1932
Enregistré le : ven. 02 mai 2008 14:54
Localisation : Bruxelles
Status : Hors ligne

Re: [..] Installation d'un logiciel automatisé...

#5

Message par jbnh »

Bonjour,

Vous pouvez toujours checker en boucle si votre fenêtre existe avec WinExist. Des qu'elle n'existe plus -> vous faies votre send.
Balise [..] devant votre requête en cours, [R] quand résolu | Pas de message concernant les bots !

Merci
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11798
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Installation d'un logiciel automatisé... (Lotus)

#6

Message par Tlem »

Et plus simplement, est-ce que ce fixpack n'aurait pas un commutateur d'installation silencieuse ???
Généralement c'est le cas donc c'est sans doute votre solution.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
tipiaks
Niveau 1
Niveau 1
Messages : 6
Enregistré le : mar. 22 sept. 2009 12:25
Status : Hors ligne

Re: [..] Installation d'un logiciel automatisé... (Lotus)

#7

Message par tipiaks »

Le problème de cette installation silencieuse c'est que l'utilisateur ne verra pas la fin de l'installation et s'il lance le logiciel "lotus" entre temps sa fera complètement planter le PC.

C'est pour sa qu'une installation automatique avec les fenêtres me convient très bien.

Je vais tester le "Winexist".
tipiaks
Niveau 1
Niveau 1
Messages : 6
Enregistré le : mar. 22 sept. 2009 12:25
Status : Hors ligne

Re: [..] Installation d'un logiciel automatisé... (Lotus)

#8

Message par tipiaks »

Comment formuler ma boucle pour dire que tant que le "bouton 1" n'affiche pas "finish" il ne faut pas quitter cette boucle et exécuter l'action suivante ?


Une idée s'il vous plait?
Avatar du membre
Iste
Niveau 11
Niveau 11
Messages : 1870
Enregistré le : jeu. 04 déc. 2008 14:21
Localisation : 76
Status : Hors ligne

Re: [..] Installation d'un logiciel automatisé... (Lotus)

#9

Message par Iste »

tipiaks a écrit :Le problème de cette installation silencieuse c'est que l'utilisateur ne verra pas la fin de l'installation et s'il lance le logiciel "lotus" entre temps sa fera complètement planter le PC.
Baaaah, runwait() ou shellexecutewait() et pendant ce temps tu met une fenetre a l'ecran 'installation en cours, merci de patienter', pas bon ?
sinon, tu as essayé ControlGetText() ?
Signez ici
tipiaks
Niveau 1
Niveau 1
Messages : 6
Enregistré le : mar. 22 sept. 2009 12:25
Status : Hors ligne

Re: [..] Installation d'un logiciel automatisé... (Lotus)

#10

Message par tipiaks »

Je débute et je n'arrive pas a comprendre le mécanisme des commandes.

Je voudrais juste à la fin de mon code que la commande "Send("!f")" se lance après que mon logiciel soit finit d'installer. Il se termine quand le bouton "finish" apparait. Le temps d'installation variant d'un poste à un autre il m'es impossible d'utiliser le "sleep".

Pouvez-vous me donner un exemple de script s'il vous plait ?

2ème Question Grâce à "runas" mon script s'exécutera bien en administrateur (dans mon exemple)?

Code : Tout sélectionner

runas("administrateur","********","***********","","")
run("\\serveur01\fichiers\lotus\setup.exe")
winwaitactive("IBM Lotus Notes 8.5 FP1 - InstallShield Wizard")
sleep(2000)
Send("{Enter}")
sleep(1000)
Send("!a") 
Send("{Enter}")
sleep(1000)
Send("{Enter}")
sleep(1000)
Send("{Enter}")
While Not BitAnd(WinExists("Finish"),15)
    Sleep(100)
WEnd
Send("!f")
 
Répondre