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

Вниз

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

 
demonyator ©   (2004-03-10 01:35) [0]

От моей программы требуется считать время работы чужих программ для составления статистики в интернет клубе. Мне кажется, что нужно "ловить" создание процессов (как это наверняка делает Spider Guard) Но вот не знаю как, помогите решить проблему.


 
coban2k ©   (2004-03-10 18:16) [1]

Попробуй определять все процессы каждые n миллисекунд, на прозводительности это особо не отобразится. Для ловли необходимо реализовывать перехват API, что прежде всего небезопасно в плане стабильности всей системы (одна из лучших библиотек перехвата API для дельфи - http://www.madshi.net).


 
demonyator ©   (2004-03-11 18:36) [2]

Дело в том, что так я и делаю сейчас ... повесил таймер и ганяю. Но мне показалось, что есть более изящный способ. Ведь Spider всё-таки делает это как-то и совсем не тормозит систему. Может быть кто-то поделится кодом. Ведь наверняка многие сталкивались с подобной проблеммой. Неужели все пошли по пути "таймера"?


 
Tyama   (2004-03-11 23:57) [3]

А как насчёт HOOKа? На WH_SHELL поставь и записывай все создаваемые процессы (Точнее окна)...


 
demonyator ©   (2004-03-13 16:01) [4]

WH_SHELL работать будет только при создании окон верхнего уровня.
Я ставил WH_CBT хук, но там возможно ловить только создание и разрушение окон, а нужно ловить именно процессы.


 
Digitman ©   (2004-03-13 16:10) [5]


> но там возможно ловить только создание и разрушение окон


где "там" ?

хук-модуль автоматически загружается системой в ВАП каждого вновь стартующего GUI-процесса, еще до того как процесс этот создает самое первое (главное) окно

при загрузке хук-модуля ты получаешь управление в процедуре инициализации модуля (в осн.код.потоке тек.процесса). что и можно с успехом использовать как факт старта нового GUI-процесса, выполнив при получении управления любые нужные действия


 
demonyator ©   (2004-03-14 16:17) [6]

Digitman, а на что в таком случае будет наиболее рационально ставить хук? WH_ ?



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

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

Наверх




Память: 0.48 MB
Время: 0.044 c
4-1079274429
Sergeika
2004-03-14 17:27
2004.04.11
Нужен низкоуровневый хук на клаву WH_KEYBOARD_LL


3-1082049671
Koba
2004-04-15 21:21
2004.04.11
Запросы


3-1078989305
V-A-V
2004-03-11 10:15
2004.04.11
ADO и MSAccess


14-1081925766
lehich
2004-04-14 10:56
2004.04.11
книга по WinAPI


14-1082333245
Dudao
2004-04-19 04:07
2004.04.11
Delphi 8 VCL form application