<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Bonjour,<br>
    <br>
    Le premier exemple est le bon, le if doit cependant être aligné au
    même 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 la DLL pour attendre 2 secondes, en effet celle-ci est peut être
    encore 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 déjà intégré à la fonction remove_file().<br>
    <br>
    Cordialement,<br>
    Bastien HERMITTE<br>
    <br>
    <div class="moz-cite-prefix">Le 06/08/2015 09:18, Didier Paulin a
      écrit :<br>
    </div>
    <blockquote
cite="mid:480801347.224835.1438845536358.JavaMail.zimbra@lepuyenvelay.fr"
      type="cite">
      <div style="font-family: times new roman, new york, times, serif;
        font-size: 12pt; color: #000000">
        <div>
          <div><span style="color: #003366;" data-mce-style="color:
              #003366;">Ha j'avance !  merci pour ton aide, alors quand
              je fait une update de mon paquet avec ceci :</span></div>
          <div><br>
          </div>
          <div><span style="font-size: medium; color: #666699;"
              data-mce-style="font-size: medium; color: #666699;"><em>from
                setuphelpers import *</em></span><br>
            <span style="font-size: medium; color: #666699;"
              data-mce-style="font-size: medium; color: #666699;"><em>import
                os.path</em></span><br>
            <span style="font-size: medium; color: #666699;"
              data-mce-style="font-size: medium; color: #666699;"><em>uninstallkey
                = ['VLC media player']</em></span><br>
            <div><br>
            </div>
            <span style="font-size: medium; color: #666699;"
              data-mce-style="font-size: medium; color: #666699;"><em>def
                install():</em></span><br>
            <span style="font-size: medium; color: #666699;"
              data-mce-style="font-size: medium; color: #666699;"><em>   
                try:</em></span><br>
            <span style="font-size: medium; color: #666699;"
              data-mce-style="font-size: medium; color: #666699;"><em>       
                install_exe_if_needed('vlc-2.2.1-win32.exe','/S
                --no-qt-privacy-ask','VLC media
                player',min_version='2.2.1',killbefore='vlc.exe')</em></span><br>
            <span style="font-size: medium; color: #666699;"
              data-mce-style="font-size: medium; color: #666699;"><em>   
                except:</em></span><br>
            <span style="font-size: medium; color: #666699;"
              data-mce-style="font-size: medium; color: #666699;"><em>       
                killalltasks('vlc.exe')</em></span><br>
            <span style="font-size: medium; color: #666699;"
              data-mce-style="font-size: medium; color: #666699;"><em>       
                print("installing VLC exe")</em></span><br>
            <span style="font-size: medium; color: #666699;"
              data-mce-style="font-size: medium; color: #666699;"><em>       
                run('"vlc-2.2.1-win32.exe" /S  --no-qt-privacy-ask')</em></span><br>
            <div><br>
            </div>
            <span style="font-size: medium; color: #666699;"
              data-mce-style="font-size: medium; color: #666699;"><em>if
                os.path.isfile(makepath(programfiles32 +
                r'\VideoLAN\VLC','npvlc.dll')):</em></span><br>
            <span style="font-size: medium; color: #666699;"
              data-mce-style="font-size: medium; color: #666699;"><em>   
                remove_file(makepath(programfiles32 +
                r'\VideoLAN\VLC','npvlc.dll'))</em></span></div>
          <div><br>
          </div>
          <div>La dll est bien supprimé sur les postes qui ont déjà vlc,
            par contre sur un nouveau poste vlc s'install mais la dll
            n'est pas supprimé ??</div>
          <div><br>
          </div>
          <div><br>
          </div>
          <div><span style="text-decoration: underline;"
              data-mce-style="text-decoration: underline;">Et si je fait
              :</span></div>
          <div><br>
          </div>
          <div>
            <div><span style="color: #666699;" data-mce-style="color:
                #666699;"><em>def install():</em></span><br>
              <span style="color: #666699;" data-mce-style="color:
                #666699;"><em>    try:</em></span><br>
              <span style="color: #666699;" data-mce-style="color:
                #666699;"><em>       
                  install_exe_if_needed('vlc-2.2.1-win32.exe','/S
                  --no-qt-privacy-ask','VLC media
                  player',min_version='2.2.1',killbefore='vlc.exe')</em></span><br>
              <span style="color: #666699;" data-mce-style="color:
                #666699;"><em>    except:</em></span><br>
              <span style="color: #666699;" data-mce-style="color:
                #666699;"><em>        killalltasks('vlc.exe')</em></span><br>
              <span style="color: #666699;" data-mce-style="color:
                #666699;"><em>        print("installing VLC exe")</em></span><br>
              <span style="color: #666699;" data-mce-style="color:
                #666699;"><em>        run('"vlc-2.2.1-win32.exe" /S 
                  --no-qt-privacy-ask')</em></span><br>
              <span style="color: #666699;" data-mce-style="color:
                #666699;"><em>        if
                  os.path.isfile(makepath(programfiles32 +
                  r'\VideoLAN\VLC','npvlc.dll')):</em></span><br>
              <span style="color: #666699;" data-mce-style="color:
                #666699;"><em>           
                  remove_file(makepath(programfiles32 +
                  r'\VideoLAN\VLC','npvlc.dll'))</em></span></div>
            <div><em> </em></div>
            <div>La dll n'est jamais supprimé, ni sur les postes updater
              ni sur les nouvelle install<em>...<br>
              </em></div>
            <div><em> </em></div>
            <div><em> </em></div>
            <strong>Une idée ?</strong></div>
        </div>
        <div><br>
        </div>
        <div><span name="x"></span>
          <div>Cordialement. <br>
          </div>
          <div><br>
          </div>
          <div><img doc="Briefcase/didier.jpg"
              src="cid:part1.04050604.05050803@b2pweb.com"
              data-mce-src="/home/didier.paulin@lepuyenvelay.fr/Briefcase/didier.jpg"></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>"Bastien
          HERMITTE" <a class="moz-txt-link-rfc2396E" href="mailto:bhermitte@b2pweb.com"><bhermitte@b2pweb.com></a><br>
          <b>À: </b><a class="moz-txt-link-abbreviated" href="mailto:wapt@lists.tranquil.it">wapt@lists.tranquil.it</a><br>
          <b>Envoyé: </b>Mercredi 5 Août 2015 15:23:05<br>
          <b>Objet: </b>Re: [Wapt] Question d'un newbie python<br>
          <div><br>
          </div>
          Bonjour,<br>
          <br>
          La fonction makepath n'est pas une fonction standard de
          python, pour l'utiliser il faut importer les fonctions du
          setuphelper en haut du script :<br>
          <i>from setuphelpers import *</i><br>
          <br>
          Cela me parait bizarre que votre premier exemple fonctionne
          car la fonction makepath ne prend que deux paramètres et pas
          quatre (mais je suis loin d'être expert en python, et je suis
          toujours en WAPT 1.1.1 donc la fonction a peut être changé
          depuis).<br>
          <br>
          Je viens de tester ceci et ça fonctionne bien :<br>
          <i>remove_file(</i><i>makepath(programfiles32 +
            r'\VideoLAN\VLC','npvlc.dll'))</i><br>
          A placer en dessous de la commande d'installation de VLC
          (run).<br>
          <br>
          Cordialement<br>
          Bastien HERMITTE<br>
          <br>
          <div class="moz-cite-prefix">Le 05/08/2015 15:05, Didier
            Paulin a écrit :<br>
          </div>
          <blockquote
            cite="mid:14024242.173131.1438779909257.JavaMail.zimbra@lepuyenvelay.fr">
            <div style="font-family: times new roman, new york, times,
              serif; font-size: 12pt; color: #000000"
              data-mce-style="font-family: times new roman, new york,
              times, serif; font-size: 12pt; color: #000000;">
              <div><span style="color: rgb(51, 51, 153);"
                  data-mce-style="color: #333399;">Quand j’exécute
                  manuellement ceci dans pyscripter  ma dll est bien
                  effacé :</span></div>
              <div><br>
              </div>
              <div><em>filename =
                  makepath(programfiles32,'videolan','VLC','npvlc.dll')</em><br>
                <em>        if os.path.isfile(filename):</em><br>
                <em>            os.remove(filename)</em></div>
              <div><em><br>
                </em></div>
              <div><span style="color: rgb(51, 51, 153);"
                  data-mce-style="color: #333399;">Mais quand je le
                  rajoute à la fin du script vlc la dll ne s’efface pas
                  à la fin de l'install..</span><br>
              </div>
              <div><span style="color: rgb(51, 51, 153);"
                  data-mce-style="color: #333399;"><br>
                </span></div>
              <div><span style="color: rgb(51, 51, 153);"
                  data-mce-style="color: #333399;">----<br>
                </span></div>
              <div><br>
              </div>
              <div><span style="color: rgb(51, 51, 153);"
                  data-mce-style="color: #333399;">Si j’exécute ceci :</span><br>
              </div>
              <div><br>
              </div>
              <div><em>filename = makepath(programfiles32+
                  r'\VideoLAN\VLC','npvlc.dll')</em><br>
                <em>if os.path.isfile(filename):</em><br>
                <em>            os.remove(filename)</em></div>
              <div><em><br>
                </em></div>
              <div><em><img src="cid:part2.00050207.05000102@b2pweb.com"
                    alt=""
data-mce-src="imap://bhermitte%40b2pweb%2Ecom@imap.b2pweb.com:143/fetch%3EUID%3E/INBOX/DIVERS%3E95507?header=quotebody&part=1.2.2"></em></div>
              <div><br>
              </div>
              <div><br>
              </div>
              <div>merci d'avance<br>
              </div>
              <div><br>
              </div>
              <div><span></span>
                <div>Cordialement. <br>
                </div>
                <div><br>
                </div>
                <div><img src="cid:part3.04050103.00070507@b2pweb.com"
data-mce-src="imap://bhermitte%40b2pweb%2Ecom@imap.b2pweb.com:143/fetch%3EUID%3E/INBOX/DIVERS%3E95507?header=quotebody&part=1.2.3"></div>
                <span></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>"Bastien
                HERMITTE" <a moz-do-not-send="true"
                  class="moz-txt-link-rfc2396E"
                  href="mailto:bhermitte@b2pweb.com" target="_blank"
                  data-mce-href="mailto:bhermitte@b2pweb.com"><bhermitte@b2pweb.com></a><br>
                <b>À: </b><a moz-do-not-send="true"
                  class="moz-txt-link-abbreviated"
                  href="mailto:wapt@lists.tranquil.it" target="_blank"
                  data-mce-href="mailto:wapt@lists.tranquil.it">wapt@lists.tranquil.it</a><br>
                <b>Envoyé: </b>Mercredi 5 Août 2015 14:37:00<br>
                <b>Objet: </b>Re: [Wapt] Question d'un newbie python<br>
                <div><br>
                </div>
                Bonjour,<br>
                <br>
                Le problème est dans la fonction makepath :<br>
                <i>filename = makepath(programfiles32 +
                  r'\VideoLAN\VLC','npvlc.dll')</i><br>
                Note : le 'r' avant une chaine permet d'éviter d'avoir à
                doubler les antislash.<br>
                <br>
                De plus, il existe une fonction déjà toute faite pour la
                suppression de fichier :<br>
                <i>remove_file(filename)</i><br>
                Note : pour voir la source de la fonction remove_file,
                dans pyscripter, appuie sur Ctrl et clic sur le nom de
                la fonction<br>
                <br>
                Cordialement,<br>
                <div class="moz-signature">Bastien HERMITTE<br>
                  <br>
                </div>
                <div class="moz-cite-prefix">Le 05/08/2015 14:04, Didier
                  Paulin a écrit :<br>
                </div>
                <blockquote
cite="mid:596705800.167051.1438776269221.JavaMail.zimbra@lepuyenvelay.fr">
                  <div style="font-family: times new roman, new york,
                    times, serif; font-size: 12pt; color: #000000"
                    data-mce-style="font-family: times new roman, new
                    york, times, serif; font-size: 12pt; color:
                    #000000;">
                    <div>Bonjour à tous, je commence à gratter (un peu)
                      la création de paquet et je n'arrive pas à faire
                      un truc qui doit être tout simple <img
                        src="cid:part6.03020306.07070906@b2pweb.com"
                        alt="Embarrassé" title="Embarrassé"
data-mce-src="imap://bhermitte%40b2pweb%2Ecom@imap.b2pweb.com:143/fetch%3EUID%3E/INBOX/DIVERS%3E95507?header=quotebody&part=1.2.4"
                        border="0"> :<br>
                    </div>
                    <div><br>
                    </div>
                    <div>Je veux supprimer une dll à la fin d'install de
                      vlc, j'ai modifié le setup.py de cette manière
                      mais ma dll ne veux pas s’effacer.... ami
                      pro-python voyer vous la coquille ?<br>
                    </div>
                    <div><br>
                    </div>
                    <div><em>from setuphelpers import *</em><br>
                      <em>import os.path</em><br>
                      <em>uninstallkey = ['VLC media player']</em><br>
                      <div><br>
                      </div>
                      <em>def install():</em><br>
                      <em>    try:</em><br>
                      <em>       
                        install_exe_if_needed('vlc-2.2.1-win32.exe','/S
                        --no-qt-privacy-ask','VLC media
                        player',min_version='2.2.1',killbefore='vlc.exe')</em><br>
                      <em>    except:</em><br>
                      <em>        killalltasks('vlc.exe')</em><br>
                      <em>        print("installing VLC exe")</em><br>
                      <em>        run('"vlc-2.2.1-win32.exe" /S 
                        --no-qt-privacy-ask')</em><br>
                      <em>        <strong>filename =
                          makepath(programfiles32,'videolan','VLC','npvlc.dll')</strong></em><br>
                      <strong><em>        if os.path.isfile(filename):</em></strong><br>
                      <strong><em>            os.remove(filename)</em></strong></div>
                    <div><br>
                    </div>
                    <div><span style="color: black;"
                        data-mce-style="color: black;"><br>
                      </span></div>
                    <div><br style="color: black;"
                        data-mce-style="color: black;">
                    </div>
                    <div><span></span>
                      <div>Cordialement. <br>
                      </div>
                      <div><br>
                      </div>
                      <div><img
                          src="cid:part7.00090801.07080501@b2pweb.com"
data-mce-src="imap://bhermitte%40b2pweb%2Ecom@imap.b2pweb.com:143/fetch%3EUID%3E/INBOX/DIVERS%3E95507?header=quotebody&part=1.2.5"></div>
                      <span></span><br>
                    </div>
                  </div>
                  <br>
                  <fieldset class="mimeAttachmentHeader"></fieldset>
                  <br>
                  <pre>_______________________________________________
WAPT mailing list
<a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="mailto:WAPT@lists.tranquil.it" target="_blank" data-mce-href="mailto:WAPT@lists.tranquil.it">WAPT@lists.tranquil.it</a>
<a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://lists.tranquil.it/listinfo/wapt" target="_blank" data-mce-href="http://lists.tranquil.it/listinfo/wapt">http://lists.tranquil.it/listinfo/wapt</a>
</pre>
                </blockquote>
                <br>
                <br>
                _______________________________________________<br>
                WAPT mailing list<br>
                <a moz-do-not-send="true"
                  class="moz-txt-link-abbreviated"
                  href="mailto:WAPT@lists.tranquil.it" target="_blank"
                  data-mce-href="mailto:WAPT@lists.tranquil.it">WAPT@lists.tranquil.it</a><br>
                <a moz-do-not-send="true" class="moz-txt-link-freetext"
                  href="http://lists.tranquil.it/listinfo/wapt"
                  target="_blank"
                  data-mce-href="http://lists.tranquil.it/listinfo/wapt">http://lists.tranquil.it/listinfo/wapt</a><br>
              </div>
              <div><br>
              </div>
            </div>
          </blockquote>
          <br>
          <br>
          _______________________________________________<br>
          WAPT mailing list<br>
          <a class="moz-txt-link-abbreviated" href="mailto:WAPT@lists.tranquil.it">WAPT@lists.tranquil.it</a><br>
          <a class="moz-txt-link-freetext" href="http://lists.tranquil.it/listinfo/wapt">http://lists.tranquil.it/listinfo/wapt</a><br>
        </div>
        <div><br>
        </div>
      </div>
    </blockquote>
    <br>
  </body>
</html>