04.09.2012, 15:51 | #9 |
Участник
|
определяем ID процесса
X++: static int GetCurrentProcessId() { Dll kernel32 = new Dll(#KERNELDLL); DllFunction processId = new DllFunction(kernel32, "GetCurrentProcessId"); ; processId.returns(ExtTypes:: DWord); return processId.call(); } X++: static void TerminateProcess(int _processId) { Dll kernel32 = new Dll(#KERNELDLL); DllFunction closeHandle = new DllFunction(kernel32, "CloseHandle"); DllFunction terminateProcess = new DllFunction(kernel32, "TerminateProcess"); DllFunction openProcess = new DllFunction(kernel32, "OpenProcess"); int hProcess; closeHandle.returns(ExtTypes:: DWORD); closeHandle.arg(ExtTypes:: DWORD); terminateProcess.returns(ExtTypes:: DWord); terminateProcess.arg(ExtTypes:: DWord, ExtTypes:: DWord); openProcess.returns(ExtTypes:: DWord); openProcess.arg(ExtTypes:: DWord, ExtTypes::DWord, ExtTypes:: DWord); hProcess = openProcess.call(1, false, _processId); terminateProcess.call(hProcess, 1); closeHandle.call(hProcess); } |
|