[Python] aiuto subprocess py2exe

2012-11-05 Per discussione Vittorio Spina

Ciao a tutti, ho un problema che non so come superare.
Ho scritto il programmino banale:

/import os
import subprocess
from aconfig import *
Config= aconfig(conf/conf.cf)  #leggo la configurazione esterna 
con una classe mia
file= Config.filetolaunch #consideriamolo ad esempio 
file=c:/prog.exe

checkDoubleRun= Config.checkDoubleRun #consideriamolo True
processisactive=False
if checkDoubleRun:
in_file = open(pid.pid,r)
FilePid = in_file.read()
in_file.close()
p = subprocess.Popen(pslist +FilePid.replace(\n,), 
stdout=subprocess.PIPE, stderr=subprocess.PIPE)

out, err = p.communicate()
if was not found not in out:
processisactive=True
if not processisactive:
process=subprocess.Popen(r''+file+'', shell=True)
pid=process.pid
out_file = open(pid.pid,w)
out_file.write(str(pid))
out_file.close()/

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
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.
Funziona. Se però lo compilo con py2exe come window, ricevo un errore 
sull'handle riportato nel file di log:


/Traceback (most recent call last):
  File launcher.py, line 15, in module
  File subprocess.pyc, line 588, in __init__
  File subprocess.pyc, line 707, in _get_handles
  File subprocess.pyc, line 752, in _make_inheritable
WindowsError: [Error 6] Handle non valido/

cosa può essere secondo voi?
grazie
Vittorio
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] aiuto subprocess py2exe

2012-11-05 Per discussione Matteo Boscolo
L'errore e' alla righa 15 .. quindi se ci dici quale e' la linea e' 
meglio :)))


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


ciao,
Matteo

Il 05/11/2012 16:48, Vittorio Spina ha scritto:

Ciao a tutti, ho un problema che non so come superare.
Ho scritto il programmino banale:

/import os
import subprocess
from aconfig import *
Config= aconfig(conf/conf.cf)  #leggo la configurazione esterna 
con una classe mia
file= Config.filetolaunch #consideriamolo ad esempio 
file=c:/prog.exe

checkDoubleRun= Config.checkDoubleRun #consideriamolo True
processisactive=False
if checkDoubleRun:
in_file = open(pid.pid,r)
FilePid = in_file.read()
in_file.close()
p = subprocess.Popen(pslist +FilePid.replace(\n,), 
stdout=subprocess.PIPE, stderr=subprocess.PIPE)

out, err = p.communicate()
if was not found not in out:
processisactive=True
if not processisactive:
process=subprocess.Popen(r''+file+'', shell=True)
pid=process.pid
out_file = open(pid.pid,w)
out_file.write(str(pid))
out_file.close()/

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
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.
Funziona. Se però lo compilo con py2exe come window, ricevo un errore 
sull'handle riportato nel file di log:


/Traceback (most recent call last):
  File launcher.py, line 15, in module
  File subprocess.pyc, line 588, in __init__
  File subprocess.pyc, line 707, in _get_handles
  File subprocess.pyc, line 752, in _make_inheritable
WindowsError: [Error 6] Handle non valido/

cosa può essere secondo voi?
grazie
Vittorio


___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python