[reportlab-users] OT: WindowsError Errno 6 using the subprocess module in _make_inheritable

Henning von Bargen H.vonBargen at t-p.com
Wed Mar 22 06:02:37 EST 2006


I know this is off-topic,
but on the other hand I know that at least Robin Becker 
had the same problem in June 2005.

My application (Python 2.4.1) is running as a Windows Service.
I am using the subprocess module to run another process
(Oracle Reports in this case).

Note:
I use a slightly modified version of subprocess.py
where I did remove the _active list in order to work around 
a known bug in subprocess.py.

Sometimes, this fails like this:
  File "E:\lisa_ins\ewu\lisa9_auftrag\reporting\python\tup_lisa\util\threadutil.py", line 615, in callSubProcess
    creationflags = creationflags
  File "E:\lisa_ins\ewu\lisa9_auftrag\reporting\python\tup_lisa\util\subprocess.py", line 560, in __init__
    (p2cread, p2cwrite,
  File "E:\lisa_ins\ewu\lisa9_auftrag\reporting\python\tup_lisa\util\subprocess.py", line 622, in _get_handles
    p2cread = self._make_inheritable(p2cread)
  File "E:\lisa_ins\ewu\lisa9_auftrag\reporting\python\tup_lisa\util\subprocess.py", line 663, in _make_inheritable
    DUPLICATE_SAME_ACCESS)
WindowsError: [Errno 6] Das Handle ist ungültig (the handle is invalid).

The call to Popen is like this:
    process = subprocess.Popen (args, bufsize = 2000,
                                stdout = subprocess.PIPE,
                                stderr = subprocess.PIPE,
                                cwd = cwd,
                                env = env,
                                creationflags = creationflags
                               )

Note that I specified PIPE for stdout and stderr, but did not specify
a value for stdin.

The error only occurs on the very first call.



More information about the reportlab-users mailing list