
25.02.2009, 08:40
|
 |
Исполняемый Ретровирус
|
|
Регистрация: 09.08.2008
Адрес: Umbrella Corporation
Сообщения: 743
Репутация: 1293
|
|
Привет, вот нашел:
Код:
/*///////////////////////////////////////
//Suspend/Resume process by pID
*////////////////////////////////////////
BOOL SuspendProcess(DWORD ProcessId, bool Suspend)
{
HANDLE snHandle = NULL;
BOOL rvBool = FALSE;
THREADENTRY32 te32 = {0};
snHandle = CreateToolhelp32Snapshot(TH32CS_SNAPTHREAD, 0);
if (snHandle == INVALID_HANDLE_VALUE) return (FALSE);
te32.dwSize = sizeof(THREADENTRY32);
if (Thread32First(snHandle, &te32))
{
do
{
if (te32.th32OwnerProcessID == ProcessId)
{
HANDLE hThread = OpenThread(THREAD_SUSPEND_RESUME, FALSE, te32.th32ThreadID);
if (!Suspend)
{
ResumeThread(hThread);
}
else
{
SuspendThread(hThread);
}
CloseHandle(hThread);
}
}
while (Thread32Next(snHandle, &te32));
rvBool = TRUE;
}
else
rvBool = FALSE;
CloseHandle (snHandle);
return (rvBool);
}
|