Probléme installation sur paquet installation Home I/O

Règles du forum
Règles du forum communautaire
* English support on www.reddit.com/r/wapt
* Le support communautaire en français se fait sur ce forum
* Merci de préfixer le titre du topic par [RESOLU] s'il est résolu.
* Merci de ne pas modifier un topic qui est taggé [RESOLU]. Ouvrez un nouveau topic en référençant l'ancien
* Préciser version de WAPT installée ( 1.8.2 / 2.0 / 2.1 / 2.2 / etc.) AINSI QUE l'édition Enterprise / Discovery
* Préciser OS du serveur (Linux / Windows) et version (Debian Stretch/Buster - CentOS 7 - Windows Server 2012/2016/2019)
* Préciser OS de la machine d'administration/création des paquets (Windows 7 / 10)
* Comme tout forum communautaire, le support est fait bénévolement par les membres. Si vous avez besoin d'un support commercial, vous pouvez contacter le service commercial Tranquil IT au 02.40.97.57.55
mickael.lombard
Messages : 7
Inscription : 16 juin 2017 - 10:01

17 déc. 2018 - 09:07

Bonjour à tous,

Je rencontre un problème avec l'installation du logiciel Home I/O.
Voici mon script :

Code : Tout sélectionner

# -*- coding: utf-8 -*-
from setuphelpers import *

uninstallkey = []

def install():
    print('installing langevin-home-io')
    install_exe_if_needed("homeio-1.5.0-installer.exe",'--unattendedmodeui none --mode unattended',key='',min_version='1.5.0')
    filecopyto('paul-langevin.lic','C:\Program Files (x86)\Real Games\Home IO')
Quand j'installe depuis la Pyscripter sur mon poste de test tout est OK. Si je lance l'installation sur un poste avec la commande wapt-get install cela fonctionne aussi. Par contre si je lie le paquet à un poste, l'installation ne va pas jusqu'au bout et j'ai alors le message d'erreur suivant :
installing langevin-home-io
[Error 32] Le processus ne peut pas accÚder au fichier car ce fichier est utilisÚ par un autre processus: 'c:\\temp\\waptensxp2\\homeio-1.5.0-installer.exe'
Traceback (most recent call last):
File "C:\Program Files (x86)\wapt\common.py", line 3512, in install_wapt
exitstatus = setup.install()
File "c:\temp\waptensxp2\setup.py", line 8, in install
File "C:\Program Files (x86)\wapt\common.py", line 3471, in new_func
return func(*args,**kwargs)
File "C:\Program Files (x86)\wapt\setuphelpers.py", line 3982, in install_exe_if_needed
run(r'"%s" %s' % (exe,silentflags),accept_returncodes=accept_returncodes,timeout=timeout,pidlist=pidlist)
File "C:\Program Files (x86)\wapt\setuphelpers.py", line 1029, in run
raise TimeoutExpired(cmd,''.join(output),timeout)
TimeoutExpired: Command '"homeio-1.5.0-installer.exe" --unattendedmodeui none --mode unattended --disable-components connectio --disable-components VisualC2010' timed out after 300 seconds with output ''WARNING: Option --disable-components was already provided\r\n''
TimeoutExpired: Command '"homeio-1.5.0-installer.exe" --unattendedmodeui none --mode unattended --disable-components connectio --disable-components VisualC2010' timed out after 300 seconds with output ''WARNING: Option --disable-components was already provided\r\n''
En y regardant de plus prêt l'installation se fait presque jusqu'au bout mais reste figé à la fin.
J'ai deux pistes mais je ne sais pas comment les mettre en place :
1) l'application cherche a se connecter sur internet mais vu qu'aucun utilisateur n'es connecté mon proxy ne le laisse pas passer -> comment paramétrer un proxy dans un paquet WAPT?
2) Des fichiers utilisateurs sont copiés à la fin et le paquet ne parviens pas à écrire ou il faut (J'ai testé de lancer le service WAPT avec un compte administrateur local et du domaine, mais cela n'a rien changé)

Qu'en pensez vous?
Par avance merci
gaelds
Messages : 220
Inscription : 22 nov. 2015 - 08:37

19 mars 2019 - 11:18

Bonjour,
si ça peut t'aider, voici mon code qui installe bien Home IO sur mes postes élèves, sans renseigner d'identifiants du proxy:

Code : Tout sélectionner

# -*- coding: utf-8 -*-
from setuphelpers import *

uninstallkey = []
uninstallstring = "C:\Program Files (x86)\Real Games\Home IO\uninstall.exe"
global destdir
destdir = makepath(programfiles32,'Real Games','Home IO')

def install():
    print('Installation de dst-home-io-distrame')
    install_exe_if_needed("homeio-1.5.0-installer.exe",' --unattendedmodeui none --mode unattended --installer-language fr',key='Home I/O',min_version='1.5.0')

    print(ur'Copie de la licence 2019')
    if isdir(destdir):
        filecopyto("lycee-professionnel.lic",destdir)
    else:
        error(ur'Dossier Home IO introuvable')

    print('Raccourci dans dossier Logiciels sur bureau public')
    if not isdir(makepath(common_desktop(),ur'Logiciels',ur'Elec - Automatisme')):
        mkdirs(makepath(common_desktop(),ur'Logiciels',ur'Elec - Automatisme'))
    create_shortcut(makepath(common_desktop(),ur'Logiciels',ur'Elec - Automatisme',ur'Home IO.lnk'),target=r'%s\Real Games\Connect IO\Connect IO.exe' %programfiles32, wDir=r'%s\Real Games\Connect IO\\' %programfiles32,icon=r'%s\Real Games\Connect IO\Connect IO.exe' %programfiles32)
    create_shortcut(makepath(common_desktop(),ur'Logiciels',ur'Elec - Automatisme',ur'Bewatest.lnk'),target=r'%s\Real Games\Connect IO\Connect IO.exe' %programfiles32, wDir=r'%s\Real Games\Connect IO\\' %programfiles32,icon=r'%s\Real Games\Connect IO\Connect IO.exe' %programfiles32)
    remove_desktop_shortcut('Home IO')
    remove_desktop_shortcut('Connect IO')

def uninstall():
    print('Suppression de Home et Connect IO')
    if isfile(makepath(common_desktop(),ur'Logiciels',ur'Elec - Automatisme',ur'Connect IO.lnk')):
        remove_file(makepath(common_desktop(),ur'Logiciels',ur'Elec - Automatisme',ur'Connect IO.lnk'))
    if isfile(makepath(common_desktop(),ur'Logiciels',ur'Elec - Automatisme',ur'Home IO.lnk')):
        remove_file(makepath(common_desktop(),ur'Logiciels',ur'Elec - Automatisme',ur'Home IO.lnk'))

def session_setup():
    remove_user_desktop_shortcut('Home IO')
    remove_user_desktop_shortcut('Connect IO')
PS : il y a surement une autre façon de renseigner le répertoire d'installation du logiciel sans le coder en dur, mais je n'avais pas trouvé.
mickael.lombard
Messages : 7
Inscription : 16 juin 2017 - 10:01

09 sept. 2019 - 11:20

Merci beaucoup pour ton message, je viens tout juste d'en prendre connaissance.
Je viens donc d'effectuer un nouveau paquet selon tes paramètres mais malheureusement cela se comporte exactement de la même façon. Il doit y avoir quelque chose de différent sur mes postes.
Avatar de l’utilisateur
sfonteneau
Expert WAPT
Messages : 1783
Inscription : 10 juil. 2014 - 23:52
Contact :

30 janv. 2020 - 16:02

Je répond tardivement (je viens d'avoir le cas)

Je problème est vraiement très étrange, le problème se produit avec les installeur de type installbuilder

En gros il faut le lancer une fois, puis le relancer pour que celui-ci se lance correctement en silencieux.

voici un bout de code pour résoudre le soucis

Code : Tout sélectionner

    
def install():
    filename = 'FreeStyleLibreInstaller-EU_7196.exe'
    versionpaquet = control['version'].split('-',1)[0]
    try:
        install_exe_if_needed(makepath(basedir,filename),'--installer-language fr --mode unattended --unattendedmodeui none',key='FreeStyle Libre %s' % versionpaquet,min_version=versionpaquet,timeout=30)
    except:
        killalltasks(filename)
        time.sleep(2)
        install_exe_if_needed(makepath(basedir,filename),'--installer-language fr --mode unattended --unattendedmodeui none',key='FreeStyle Libre %s' % versionpaquet,min_version=versionpaquet,timeout=60)
        
Verrouillé