I have a script (attached) that creates a windows service. Basically theUsually services don't have a console attached so sys.stdout is invalid. Just don't print anything...
service periodically runs a program 'program.exe'. This all works fine,
but during testing I discovered that if I include any 'print' statements
(used to debug the service when its run in 'debug' mode), when _not_ in
debug mode, it throws an error:
<error>
The instance's SvcRun() method failed
File "C:\Python25\Lib\site-packages\win32\lib\win32serviceutil.py",
line 785, in SvcRun
self.SvcDoRun()
File "C:\Program Files\Program\MyService.py", line 28, in SvcDoRun
print "Entering while loop..."
<type 'exceptions.IOError'>: (9, 'Bad file descriptor')
</error>
I have removed the 'print' statements, after which the service runs
fine, but was just curious to find out the reason for this error.
--
Gabriel Genellina