rapid -> Windows coprocess stdin is unexpectedly closed (Sep. 14, '06, 11:59:03 AM) |
Environment is XP with all latest updates.
I have an Interix process that starts a coprocess via a Korn shell (just to set the PATH to locate DLLs) which runs a Windows executable program with piped stdin, stdout, stderr. There are three processes running: Interix application program, Interix Korn shell, Windows application program.
The controlling Interix process shuts down the Windows coprocess by closing its stdin, like you would with a Unix coprocess.
Everything works a dream except for one nightmare ...
Periodically the Windows coprocess reads zero bytes on its stdin. It can happen at startup, when the pipes are actively sending and receiving, or when nothing has happened for hours.
Obviously this is exactly what happens when stdin is closed by the controlling Interix process.
Do you have any ideas what is causing this or how I can get some diagnostics to help locate the problem ?
Should a mixed environment coprocess work or am I just lucky ?
I've tried using another file descriptor (eg 3 or 103) but the Windows process cannot open it, getting an invalid control block address error.
Thanks
Rapid |
|
|
|