[..] RunAsWait et msiexec

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Romain
Niveau 1
Niveau 1
Messages : 7
Enregistré le : jeu. 18 déc. 2008 15:12
Status : Hors ligne

[..] RunAsWait et msiexec

#1

Message par Romain »

Tout d'abord désolé si le problème à déjà été posé mais après avoir chercher je n'ai rien trouvé d'utile à mon cas.

Alors voila, j'utilise la fonction RunAsWait pour lancer la commande msiexec afin de procéder à une installation silencieuse d'un programme, en l'occurence OpenOffice.org 3.0.

Seulement voila, la fonction ne fait absolument rien, elle ne semble même pas se lancer. Voila la ligne concernée:

Code : Tout sélectionner

RunAsWait($Login, $Domain, $password, 0, $line, @SystemDir, @SW_HIDE)
J'ai vérifié le login, le nom de domaine et le mot de passe, le problème ne viens pas de là. La variable $line est la ligne de commande à lancer, elle est très grande, mais au risque qu'elle soit illisible, la voila:

Code : Tout sélectionner

msiexec /i "\\Pdc\OOo\Install\OpenOffice.org 3.0 (fr) Installation Files\openofficeorg30.msi" /qn ADDLOCAL=gm_Root,gm_Prg,gm_r_Files_2,gm_r_Files_3,gm_r_Files_4,gm_r_Files_5,gm_r_Files_6,gm_r_Files_7,
gm_Langpack_Fonts_fr,gm_r_Fonts_OOo_Hidden,gm_r_Files_Images,gm_r_Brand,gm_Langpack_Brand_fr,
gm_Langpack_Languageroot,gm_Langpack_r_fr,gm_r_Extension_Dictionary_En,gm_r_Extension_Dictionary_Es,
gm_r_Extension_Dictionary_Fr,gm_Langpack_Binfilter_fr,gm_Langpack_Resource_fr,gm_Langpack_Basis_fr,
gm_Oo_Linguistic,gm_p_Wrt,gm_p_Wrt_Bin,gm_Langpack_Writer_fr,gm_Brand_p_Wrt,gm_p_Calc,gm_p_Calc_Bin,
gm_p_Calc_Addins,gm_Langpack_Calc_fr,gm_Brand_p_Calc,gm_p_Draw,gm_p_Draw_Bin,gm_Langpack_Draw_fr,
gm_Brand_p_Draw,gm_p_Impress,gm_p_Impress_Bin,gm_Langpack_Impress_fr,gm_Brand_p_Impress,gm_p_Base,
gm_p_Base_Bin,gm_Langpack_Base_fr,gm_Brand_p_Base,gm_p_Math,gm_p_Math_Bin,gm_Langpack_Math_fr,
gm_Brand_p_Math,gm_o_Quickstart,gm_o_Activexcontrol,gm_o_Winexplorerext,gm_o_Onlineupdate,
gm_o_Pyuno,gm_o_Grfflt INSTALLLOCATION="C:\Program Files\OpenOffice.org\" ALLUSERS=1 SELECT_WORD=1 SELECT_EXCEL=1 SELECT_POWERPOINT=1
(la liste d'attributs de ADDLOCAL est une chaine continue normalement, j'ai mis des passages à la ligne pour que ce soit plus lisible)

Là ou c'est étrange, c'est que non seulement la commande lancée à la main fonctionne, mais en plus, sans les attributs: gm_Brand_p_Wrt, gm_Brand_p_Clac, gm_Brand_p_Impress, gm_Brand_p_Base, gm_Brand_p_Draw et gm_Brand_p_Math, le script fonctionne très bien, mais j'ai besoin d'installer ces packages aussi.

J'ai pensé qu'il y avait peut être une limite pour la taille de la commande lancée par RunAsWait mais j'ai des doutes là dessus quand même.
J'espère que quelqu'un ici sauras m'aider, d'ici là je continue à chercher et je vous tiens au courant si je trouve, ça pourrais aider d'autres personnes.
Avatar du membre
peuchere83
Niveau 5
Niveau 5
Messages : 169
Enregistré le : mer. 17 déc. 2008 10:50
Status : Hors ligne

Re: [..] RunAsWait et msiexec

#2

Message par peuchere83 »

Bonsoir,

je suis dans le même cas que toi : je n'arrive pas à utiliser cette commande (en réseau ou sur le poste).

Si t'as la solution, je suis preneur car pour l'instant j'ai télécharger une vielle version qui utilise RunAsSet afin d'arriver à mes fins.
Tous biens que tu possèdes est un souci qui te retient.
Skippy est là pour t'enlever tous tes soucis.
Romain
Niveau 1
Niveau 1
Messages : 7
Enregistré le : jeu. 18 déc. 2008 15:12
Status : Hors ligne

Re: [..] RunAsWait et msiexec

#3

Message par Romain »

Bonsoir,

Apparemment c'est le RunAsWait qui ne supporte pas la commande. En utilisant la fonction Run et en lançant le script sur la session de l'administrateur, ça fonctionne.
Effectivement avec l'ancienne version et le RunAsSet ça doit fonctionner mais il doit aussi y avoir une solution avec la nouvelle.

Je cherche toujours, je vous tiens au courant.
Romain
Niveau 1
Niveau 1
Messages : 7
Enregistré le : jeu. 18 déc. 2008 15:12
Status : Hors ligne

Re: [..] RunAsWait et msiexec

#4

Message par Romain »

Bon bon bon, apparemment c'est une question de taille de commande, RunAsWait semble avoir une limite qui est dépassée avec ma ligne de commande.
J'ai donc lancé mon installation en deux fois, la première installe OOo normalement, la deuxième ajoute les raccourcis des modules définient par: gm_Brand_p_Wrt, gm_Brand_p_Clac, gm_Brand_p_Impress, gm_Brand_p_Base, gm_Brand_p_Draw et gm_Brand_p_Math.

Je ne met pas le sujet comme résolut car je ne suis pas sur que ce soit la meilleure solution, en tout cas ça suffira pour moi.
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11784
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] RunAsWait et msiexec

#5

Message par Tlem »

Si la longueur de la ligne de commande vous pose un problème, vous pouvez aussi créer un batch à la volée puis le lancer avec le RunAs. ;)
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é".
Romain
Niveau 1
Niveau 1
Messages : 7
Enregistré le : jeu. 18 déc. 2008 15:12
Status : Hors ligne

Re: [..] RunAsWait et msiexec

#6

Message par Romain »

Bonjour,

Merci pour le conseil mais malheureusement ça ne convient pas à mes besoins. En faite, la commande que je lance est déjà tirée d'un batch que je parse manuellement pour en extraire certaines commandes que mon script doit lancer.
Le principe est que l'utilisateur peut soit laisser le script faire le travail lors du premier démarrage de son poste soit lancer le batch lui même pour faire l'installation silencieuse et les autres fonctions choisies.
Mais le script marche en divisant la commande, c'est certes pas très propres mais niveau rapidité la différence n'est pas énorme et ça me permet de me pencher sur quelques améliorations.

Romain
ani
Niveau 11
Niveau 11
Messages : 1826
Enregistré le : lun. 23 juil. 2007 12:31
Localisation : Bureau
Status : Hors ligne

Re: [..] RunAsWait et msiexec

#7

Message par ani »

si vous avez du la divisé il se peut que l'erreur ne soit juste du à un problème dans les quotes

Code : Tout sélectionner

$line = 'msiexec /i "\\Pdc\OOo\Install\OpenOffice.org 3.0 (fr) Installation Files\openofficeorg30.msi" /qn ADDLOCAL=' & _
'gm_Root,gm_Prg,gm_r_Files_2,gm_r_Files_3,gm_r_Files_4,gm_r_Files_5,gm_r_Files_6,gm_r_Files_7,' & _
'gm_Langpack_Fonts_fr,gm_r_Fonts_OOo_Hidden,gm_r_Files_Images,gm_r_Brand,gm_Langpack_Brand_fr,' & _
'gm_Langpack_Languageroot,gm_Langpack_r_fr,gm_r_Extension_Dictionary_En,gm_r_Extension_Dictionary_Es,' & _
'gm_r_Extension_Dictionary_Fr,gm_Langpack_Binfilter_fr,gm_Langpack_Resource_fr,gm_Langpack_Basis_fr,' & _
'gm_Oo_Linguistic,gm_p_Wrt,gm_p_Wrt_Bin,gm_Langpack_Writer_fr,gm_Brand_p_Wrt,gm_p_Calc,gm_p_Calc_Bin,' & _
'gm_p_Calc_Addins,gm_Langpack_Calc_fr,gm_Brand_p_Calc,gm_p_Draw,gm_p_Draw_Bin,gm_Langpack_Draw_fr,' & _
'gm_Brand_p_Draw,gm_p_Impress,gm_p_Impress_Bin,gm_Langpack_Impress_fr,gm_Brand_p_Impress,gm_p_Base,' & _
'gm_p_Base_Bin,gm_Langpack_Base_fr,gm_Brand_p_Base,gm_p_Math,gm_p_Math_Bin,gm_Langpack_Math_fr,' & _
'gm_Brand_p_Math,gm_o_Quickstart,gm_o_Activexcontrol,gm_o_Winexplorerext,gm_o_Onlineupdate,' & _
'gm_o_Pyuno,gm_o_Grfflt INSTALLLOCATION="C:\Program Files\OpenOffice.org\" ALLUSERS=1 ' & _
'SELECT_WORD=1 SELECT_EXCEL=1 SELECT_POWERPOINT=1'
Romain
Niveau 1
Niveau 1
Messages : 7
Enregistré le : jeu. 18 déc. 2008 15:12
Status : Hors ligne

Re: [..] RunAsWait et msiexec

#8

Message par Romain »

Non la ligne de commande est générée par une autre application que j'ai développé moi-même et qui, à priori, est sûr. La commande en elle même fonctionne, c'est seulement dans le RunAsWait que cela pose problème, c'est pour ça que j'avais mis ça sur le compte d'une limitation dans le nombre de caractères pour le paramètre filename de cette fonction.
Je n'ai trouvé aucune information qui corrobore cette hypothèse mais je n'ai pas non plus trouvé d'autres explications. Pour ma part j'ai contourné le problème et ça fonctionne pas mal.
Avatar du membre
peuchere83
Niveau 5
Niveau 5
Messages : 169
Enregistré le : mer. 17 déc. 2008 10:50
Status : Hors ligne

Re: [..] RunAsWait et msiexec

#9

Message par peuchere83 »

Bonjour,

as tu essayé d'exécuter ta ligne depuis cmd.exe (avec un start).

Car si cela fonctionne, tu pourras modifier ton runas de la manière suivante :

Code : Tout sélectionner

RunAsWait($Login, $Domain, $Password, 0, @ComSpec & " /c " & "start " & $File, @SystemDir, @SW_MAXIMIZE)
$File représentant le batch qui lancerait ton installation de OpenOffice.

Bonne fêtes.
Tous biens que tu possèdes est un souci qui te retient.
Skippy est là pour t'enlever tous tes soucis.
Romain
Niveau 1
Niveau 1
Messages : 7
Enregistré le : jeu. 18 déc. 2008 15:12
Status : Hors ligne

Re: [..] RunAsWait et msiexec

#10

Message par Romain »

Bonjour,

Le problème c'est que la batch en question contient d'autres lignes que je ne désire pas lancer dans ce script.

Je testerais quand même avec un autre batch pour voir si le RunAsWait accepte ce cas de figure.

Bonne fin d'année.
Répondre