[Twisted-Python] spawnProcess under Win32

glyph at divmod.com glyph at divmod.com
Mon Aug 14 10:14:51 EDT 2006



On Mon, 14 Aug 2006 15:15:55 +0200, Igor Kravtchenko <igor at mekensleep.com> wrote:
>Hi!

>I've looked at the way Twisted creates a process under Win32 and I've 
>noticed
>that it uses the CreateProcess() function.  The problem is it doesn't 
>mention any
>creation flags (i.e.: it just passes 0) whereas here, we would need to pass
>DETACHED_PROCESS to avoid a new console to be created.

>I would be interested to know what do you think about this?
>Does it seem to you a good idea?

Well, we do have a UNIX-specific argument to spawnProcess (usePTY), so I don't see why we couldn't have a Win32-specific argument as well.  However, "win32flags" seems like a pretty vague name, especially since it could be CreateProcess's dwCreationFlags argument or STARTUPINFO's dwFlags attribute.

Also, depending on context, you might want CREATE_NO_WINDOW or DETACHED_PROCESS or possibly both.

I believe the right thing to do is to come up with some typical features of the Windows process environment and support them explicitly.  I don't believe all the flags you can pass to CreateProcess are compatible with the way Twisted expects subprocesses to behave, and I am definitely sure that not all the things you can put in STARTUPINFO are.




More information about the Twisted-Python mailing list