<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>