<html><body><div style="font-family: times new roman, new york, times, serif; font-size: 12pt; color: #000000"><div>Effectivement "start /w" fonctionne. J'ai mis à jour, c'est plus propre.<br></div><div><br></div><div>Merci pour votre aide.<br></div><div><br></div><div><span name="x"></span><div>Cordialement. <br></div><div><br></div><span name="x"></span><br></div><hr id="zwchr"><div style="color:#000;font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt;" data-mce-style="color: #000; font-weight: normal; font-style: normal; text-decoration: none; font-family: Helvetica,Arial,sans-serif; font-size: 12pt;"><b>De: </b>"Denis Cardon" <denis.cardon@tranquil-it-systems.fr><br><b>À: </b>"Didier Paulin" <didier.paulin@lepuyenvelay.fr>, "Bastien HERMITTE" <bhermitte@b2pweb.com><br><b>Cc: </b>wapt@lists.tranquil.it<br><b>Envoyé: </b>Jeudi 6 Août 2015 11:29:29<br><b>Objet: </b>Re: [Wapt] Question d'un newbie python<br><div><br></div>Bonjour<br><div><br></div>> Bien vu le coup du sleep, c'était bien ça ! Merci !<br>> Maintenant suppression du raccourcis bureau suivant l'os en cours :-)<br><div><br></div>Est ce que vous pourriez tester de lancer l'installer avec la commande<br>  start /w vlc-2.2.1-win32.exe<br><div><br></div>Normalement start /w ne devrait pas rendre la main tant que le programme <br>source n'est pas complètement terminé [1]<br><div><br></div>Cordialement,<br><div><br></div>Denis<br><div><br></div>[1] https://support.microsoft.com/en-us/kb/198044<br><div><br></div><br>><br>> Cordialement.<br>><br>><br>> ------------------------------------------------------------------------<br>> *De: *"Bastien HERMITTE" <bhermitte@b2pweb.com><br>> *À: *wapt@lists.tranquil.it<br>> *Envoyé: *Jeudi 6 Août 2015 10:13:34<br>> *Objet: *Re: [Wapt] Question d'un newbie python<br>><br>> Bonjour,<br>><br>> Le premier exemple est le bon, le if doit cependant être aligné au même<br>> niveau que le try/except pour être intégré à la fonction install().<br>> Vous pouvez essayer de mettre un time.sleep(2) avant la suppression de<br>> la DLL pour attendre 2 secondes, en effet celle-ci est peut être encore<br>> en cours d'utilisation par le programme d'installation.<br>><br>> Note : vous n'avez pas besoin d'effectuer le os.path.isfile() qui est<br>> déjà intégré à la fonction remove_file().<br>><br>> Cordialement,<br>> Bastien HERMITTE<br>><br>> Le 06/08/2015 09:18, Didier Paulin a écrit :<br>><br>>     Ha j'avance !  merci pour ton aide, alors quand je fait une update<br>>     de mon paquet avec ceci :<br>><br>>     /from setuphelpers import */<br>>     /import os.path/<br>>     /uninstallkey = ['VLC media player']/<br>><br>>     /def install():/<br>>     /    try:/<br>>     /        install_exe_if_needed('vlc-2.2.1-win32.exe','/S<br>>     --no-qt-privacy-ask','VLC media<br>>     player',min_version='2.2.1',killbefore='vlc.exe')/<br>>     /    except:/<br>>     /        killalltasks('vlc.exe')/<br>>     /        print("installing VLC exe")/<br>>     /        run('"vlc-2.2.1-win32.exe" /S  --no-qt-privacy-ask')/<br>><br>>     /if os.path.isfile(makepath(programfiles32 +<br>>     r'\VideoLAN\VLC','npvlc.dll')):/<br>>     /    remove_file(makepath(programfiles32 +<br>>     r'\VideoLAN\VLC','npvlc.dll'))/<br>><br>>     La dll est bien supprimé sur les postes qui ont déjà vlc, par contre<br>>     sur un nouveau poste vlc s'install mais la dll n'est pas supprimé ??<br>><br>><br>>     Et si je fait :<br>><br>>     /def install():/<br>>     /    try:/<br>>     /        install_exe_if_needed('vlc-2.2.1-win32.exe','/S<br>>     --no-qt-privacy-ask','VLC media<br>>     player',min_version='2.2.1',killbefore='vlc.exe')/<br>>     /    except:/<br>>     /        killalltasks('vlc.exe')/<br>>     /        print("installing VLC exe")/<br>>     /        run('"vlc-2.2.1-win32.exe" /S  --no-qt-privacy-ask')/<br>>     /        if os.path.isfile(makepath(programfiles32 +<br>>     r'\VideoLAN\VLC','npvlc.dll')):/<br>>     /            remove_file(makepath(programfiles32 +<br>>     r'\VideoLAN\VLC','npvlc.dll'))/<br>>     //<br>>     La dll n'est jamais supprimé, ni sur les postes updater ni sur les<br>>     nouvelle install/...<br>>     /<br>>     //<br>>     //<br>>     *Une idée ?*<br>><br>>     Cordialement.<br>><br>><br>>     ------------------------------------------------------------------------<br>>     *De: *"Bastien HERMITTE" <bhermitte@b2pweb.com><br>>     *À: *wapt@lists.tranquil.it<br>>     *Envoyé: *Mercredi 5 Août 2015 15:23:05<br>>     *Objet: *Re: [Wapt] Question d'un newbie python<br>><br>>     Bonjour,<br>><br>>     La fonction makepath n'est pas une fonction standard de python, pour<br>>     l'utiliser il faut importer les fonctions du setuphelper en haut du<br>>     script :<br>>     /from setuphelpers import */<br>><br>>     Cela me parait bizarre que votre premier exemple fonctionne car la<br>>     fonction makepath ne prend que deux paramètres et pas quatre (mais<br>>     je suis loin d'être expert en python, et je suis toujours en WAPT<br>>     1.1.1 donc la fonction a peut être changé depuis).<br>><br>>     Je viens de tester ceci et ça fonctionne bien :<br>>     /remove_file(//makepath(programfiles32 + r'\VideoLAN\VLC','npvlc.dll'))/<br>>     A placer en dessous de la commande d'installation de VLC (run).<br>><br>>     Cordialement<br>>     Bastien HERMITTE<br>><br>>     Le 05/08/2015 15:05, Didier Paulin a écrit :<br>><br>>         Quand j’exécute manuellement ceci dans pyscripter  ma dll est<br>>         bien effacé :<br>><br>>         /filename = makepath(programfiles32,'videolan','VLC','npvlc.dll')/<br>>         /        if os.path.isfile(filename):/<br>>         /            os.remove(filename)/<br>>         /<br>>         /<br>>         Mais quand je le rajoute à la fin du script vlc la dll ne<br>>         s’efface pas à la fin de l'install..<br>><br>>         ----<br>><br>>         Si j’exécute ceci :<br>><br>>         /filename = makepath(programfiles32+ r'\VideoLAN\VLC','npvlc.dll')/<br>>         /if os.path.isfile(filename):/<br>>         /            os.remove(filename)/<br>>         /<br>>         /<br>>         //<br>><br>><br>>         merci d'avance<br>><br>>         Cordialement.<br>><br>><br>>         ------------------------------------------------------------------------<br>>         *De: *"Bastien HERMITTE" <bhermitte@b2pweb.com><br>>         *À: *wapt@lists.tranquil.it<br>>         *Envoyé: *Mercredi 5 Août 2015 14:37:00<br>>         *Objet: *Re: [Wapt] Question d'un newbie python<br>><br>>         Bonjour,<br>><br>>         Le problème est dans la fonction makepath :<br>>         /filename = makepath(programfiles32 + r'\VideoLAN\VLC','npvlc.dll')/<br>>         Note : le 'r' avant une chaine permet d'éviter d'avoir à doubler<br>>         les antislash.<br>><br>>         De plus, il existe une fonction déjà toute faite pour la<br>>         suppression de fichier :<br>>         /remove_file(filename)/<br>>         Note : pour voir la source de la fonction remove_file, dans<br>>         pyscripter, appuie sur Ctrl et clic sur le nom de la fonction<br>><br>>         Cordialement,<br>>         Bastien HERMITTE<br>><br>>         Le 05/08/2015 14:04, Didier Paulin a écrit :<br>><br>>             Bonjour à tous, je commence à gratter (un peu) la création<br>>             de paquet et je n'arrive pas à faire un truc qui doit être<br>>             tout simple Embarrassé :<br>><br>>             Je veux supprimer une dll à la fin d'install de vlc, j'ai<br>>             modifié le setup.py de cette manière mais ma dll ne veux pas<br>>             s’effacer.... ami pro-python voyer vous la coquille ?<br>><br>>             /from setuphelpers import */<br>>             /import os.path/<br>>             /uninstallkey = ['VLC media player']/<br>><br>>             /def install():/<br>>             /    try:/<br>>             /        install_exe_if_needed('vlc-2.2.1-win32.exe','/S<br>>             --no-qt-privacy-ask','VLC media<br>>             player',min_version='2.2.1',killbefore='vlc.exe')/<br>>             /    except:/<br>>             /        killalltasks('vlc.exe')/<br>>             /        print("installing VLC exe")/<br>>             /        run('"vlc-2.2.1-win32.exe" /S  --no-qt-privacy-ask')/<br>>             /*filename =<br>>             makepath(programfiles32,'videolan','VLC','npvlc.dll')*/<br>>             */        if os.path.isfile(filename):/*<br>>             */            os.remove(filename)/*<br>><br>><br>><br>>             Cordialement.<br>><br>><br>><br>><br>>             _______________________________________________<br>>             WAPT mailing list<br>>             WAPT@lists.tranquil.it<br>>             http://lists.tranquil.it/listinfo/wapt<br>><br>><br>><br>>         _______________________________________________<br>>         WAPT mailing list<br>>         WAPT@lists.tranquil.it<br>>         http://lists.tranquil.it/listinfo/wapt<br>><br>><br>><br>>     _______________________________________________<br>>     WAPT mailing list<br>>     WAPT@lists.tranquil.it<br>>     http://lists.tranquil.it/listinfo/wapt<br>><br>><br>><br>> _______________________________________________<br>> WAPT mailing list<br>> WAPT@lists.tranquil.it<br>> http://lists.tranquil.it/listinfo/wapt<br>><br>><br>><br>> _______________________________________________<br>> WAPT mailing list<br>> WAPT@lists.tranquil.it<br>> http://lists.tranquil.it/listinfo/wapt<br>><br><div><br></div>-- <br>Denis Cardon<br>Tranquil IT Systems<br>Les Espaces Jules Verne, bâtiment A<br>12 avenue Jules Verne<br>44230 Saint Sébastien sur Loire<br>tel : +33 (0) 2.40.97.57.55<br>http://www.tranquil-it-systems.fr<br><div><br></div></div><div><br></div></div></body></html>