Commit e5152935 authored by Fredrik Lundh's avatar Fredrik Lundh

added TerminateProcess support to _subprocess driver

parent 118be0c6
...@@ -424,6 +424,26 @@ sp_CreateProcess(PyObject* self, PyObject* args) ...@@ -424,6 +424,26 @@ sp_CreateProcess(PyObject* self, PyObject* args)
pi.dwThreadId); pi.dwThreadId);
} }
static PyObject *
sp_TerminateProcess(PyObject* self, PyObject* args)
{
BOOL result;
long process;
int exit_code;
if (! PyArg_ParseTuple(args, "li:TerminateProcess", &process,
&exit_code))
return NULL;
result = TerminateProcess((HANDLE) process, exit_code);
if (! result)
return PyErr_SetFromWindowsErr(GetLastError());
Py_INCREF(Py_None);
return Py_None;
}
static PyObject * static PyObject *
sp_GetExitCodeProcess(PyObject* self, PyObject* args) sp_GetExitCodeProcess(PyObject* self, PyObject* args)
{ {
...@@ -498,6 +518,7 @@ static PyMethodDef sp_functions[] = { ...@@ -498,6 +518,7 @@ static PyMethodDef sp_functions[] = {
{"DuplicateHandle", sp_DuplicateHandle, METH_VARARGS}, {"DuplicateHandle", sp_DuplicateHandle, METH_VARARGS},
{"CreatePipe", sp_CreatePipe, METH_VARARGS}, {"CreatePipe", sp_CreatePipe, METH_VARARGS},
{"CreateProcess", sp_CreateProcess, METH_VARARGS}, {"CreateProcess", sp_CreateProcess, METH_VARARGS},
{"TerminateProcess", sp_TerminateProcess, METH_VARARGS},
{"GetExitCodeProcess", sp_GetExitCodeProcess, METH_VARARGS}, {"GetExitCodeProcess", sp_GetExitCodeProcess, METH_VARARGS},
{"WaitForSingleObject", sp_WaitForSingleObject, METH_VARARGS}, {"WaitForSingleObject", sp_WaitForSingleObject, METH_VARARGS},
{"GetVersion", sp_GetVersion, METH_VARARGS}, {"GetVersion", sp_GetVersion, METH_VARARGS},
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment