Eli Bendersky <eli...@gmail.com> added the comment: According to http://msdn.microsoft.com/en-us/library/7zt1y878%28v=vs.80%29.aspx, on Windows _spawnv in async mode (P_NOWAIT) returns the process _handle_, not the process ID.
win32_kill uses OpenProcess, passing it pid to obtain the handle, but this pid is already the process handle. Removing the whole call to OpenProcess in win32_kill and passing pid (instead of handle) directly to TerminateProcess, solves the problem. ---- So this appears to be a mismatch between os.spawnv and os.kill on windows. The fist returns the process handle, the second expects a process ID. Note that the documentation of os.spawnv mentions something about this: If mode is P_NOWAIT, this function returns the process id of the new process; [...] On Windows, the process id will actually be the process handle, so can be used with the waitpid() function. ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue12540> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com