At Tuesday 28/11/2006 05:49, Rudy Schockaert wrote:
I found the problem.
Actually both pieces of code work now. The problem was that when I run
the SimpleXMLRPCService in a Windows Service, the STDERR needs to be
redirected to a real file. I guess some kind of buffer overflow occurs
when you don't do this.
I added the following lines:
<snip>
def SvcStop(self):
sys.stdout = self.stdout
sys.stderr = self.stderr
.....
def SvcDoRun(self):
self.stdout = sys.stdout
self.stderr = sys.stderr
sys.stdout = file("c:/temp/my.log", "a+", 0)
sys.stderr = sys.stderr
....
</snip>
Actually you don't have to restore the previous value; Python already
saves the original value in sys.__stderr__ and restores it when
program finishes.
--
Gabriel Genellina
Softlab SRL
__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar
--
http://mail.python.org/mailman/listinfo/python-list