Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.02.27;
Скачать: CL | DM;

Вниз

Как мне отследить изменение числа процессов в системе?   Найти похожие ветки 

 
__max__   (2005-01-13 11:00) [0]

Как мне отследить изменение числа процессов в системе? Есть варианты такие: 1) Создать таймер и с каким-либо интервалом получать имена процессов с помощью ф-й Process32First, Process32Next 2) Использовать хук на WH_CALLWNDPROC или WH_CALLWNDPROCRET. Процедура вроде такой:
LRESULT CALLBACK WndRetProc (int nCode, WPARAM wParam, LPARAM lParam)
{
if (nCode < 0)
 return CallNextHookEx (hWndRetHook, nCode, wParam, lParam);

PCWPSTRUCT msg = (PCWPSTRUCT)lParam;
if (msg->message == WM_CREATE)
{
 <...>
}

return 1;
}

Но это плохой вариант так как при каждом создании не только главного диалога окна но и любого другого вызывается эта функция.

Есть ли у кого-нибудь предложения по моему вопросу?


 
Игорь Шевченко ©   (2005-01-13 11:18) [1]

Создать таймер и перечислять процессы - проще всего. Task Manager так и делает.


 
Digitman ©   (2005-01-13 12:58) [2]


> __max__  


если подходить к ответу на вопрос ч.н. "в лоб" (т.е. как заставить саму ОС оперативно извещать прикл.задачу об изменениях в списке процессов), то без драйвера режима ядра не обойтись (см. соотв.статью и пример на wasm.ru)

иначе - см.



Страницы: 1 вся ветка

Текущий архив: 2005.02.27;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.034 c
3-1106822358
DSKalugin
2005-01-27 13:39
2005.02.27
Как хранить деньги? :-))


6-1103455963
Delpher_Gray
2004-12-19 14:32
2005.02.27
InternetOpenURL - результат получилось или облом ?


1-1108459051
Игорь нтк
2005-02-15 12:17
2005.02.27
неактивная кнопка


14-1107444139
iZEN
2005-02-03 18:22
2005.02.27
Редактор TXT/hex/etc.


14-1107466249
Usser
2005-02-04 00:30
2005.02.27
В чем может быть причина ошибки?