<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">L'errore e' alla righa 15 .. quindi se
      ci dici quale e' la linea e' meglio :)))<br>
      <br>
      quando "compili" con py2exe e come se tutto il tuo codice fosse
      racchiuso dentro ad uno zip.. non sono sicuro, ma non vorrei che
      la open cercasse di aprire un file che sta dentro lo zippettone ..<br>
      <br>
      ciao,<br>
      Matteo<br>
       <br>
      Il 05/11/2012 16:48, Vittorio Spina ha scritto:<br>
    </div>
    <blockquote cite="mid:5097DFCC.6070409@gmail.com" type="cite">
      <meta content="text/html; charset=ISO-8859-1"
        http-equiv="Content-Type">
      Ciao a tutti, ho un problema che non so come superare.<br>
      Ho scritto il programmino banale:<br>
      <br>
      <small><i>import os<br>
          import subprocess<br>
          from aconfig import *<br>
          Config    = aconfig("conf/conf.cf")  #leggo la configurazione
          esterna con una classe mia<br>
          file                = Config.filetolaunch #consideriamolo ad
          esempio file="c:/prog.exe"<br>
          checkDoubleRun        = Config.checkDoubleRun #consideriamolo
          True<br>
          processisactive=False<br>
          if checkDoubleRun:<br>
              in_file = open("pid.pid","r")<br>
              FilePid = in_file.read()<br>
              in_file.close()<br>
              p = subprocess.Popen("pslist "+FilePid.replace("\n",""),
          stdout=subprocess.PIPE, stderr=subprocess.PIPE)<br>
              out, err = p.communicate()<br>
              if "was not found" not in out:<br>
                  processisactive=True<br>
          if not processisactive:<br>
              process=subprocess.Popen(r'"'+file+'"', shell=True)<br>
              pid=process.pid<br>
              out_file = open("pid.pid","w")<br>
              out_file.write(str(pid))<br>
              out_file.close()</i></small><br>
      <br>
      In pratica il programmetto in questione non fa altro che lanciare
      un'altra app e segnarsi il PID che viene scritto in un file
      temporaneo pid.pid<br>
      se quando priprovo a lanciare l'applicazione vedo che il PID è
      attivo (usando pslist) il programma non lo lancia di nuovo, questo
      per non avviare due volte la stessa applicazione.<br>
      Funziona. Se però lo compilo con py2exe come window, ricevo un
      errore sull'handle riportato nel file di log:<br>
      <br>
      <small><i>Traceback (most recent call last):<br>
            File "launcher.py", line 15, in <module><br>
            File "subprocess.pyc", line 588, in __init__<br>
            File "subprocess.pyc", line 707, in _get_handles<br>
            File "subprocess.pyc", line 752, in _make_inheritable<br>
          WindowsError: [Error 6] Handle non valido</i></small><br>
      <br>
      cosa può essere secondo voi?<br>
      grazie<br>
      Vittorio<br>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
Python mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Python@lists.python.it">Python@lists.python.it</a>
<a class="moz-txt-link-freetext" href="http://lists.python.it/mailman/listinfo/python">http://lists.python.it/mailman/listinfo/python</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>