![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Необходимо знать о каждом созданном процессе в системе [D7, WinXP]
demonyator © (2004-03-10 01:35:00)От моей программы требуется считать время работы чужих программ для составления статистики в интернет клубе. Мне кажется, что нужно "ловить" создание процессов (как это наверняка делает Spider Guard) Но вот не знаю как, помогите решить проблему.
demonyator (2004-03-14 16:17:00) [1]Digitman, а на что в таком случае будет наиболее рационально ставить хук? WH_ ?
Digitman (2004-03-13 16:10:00) [2]
> но там возможно ловить только создание и разрушение окон
где "там" ?
хук-модуль автоматически загружается системой в ВАП каждоговновь стартующего GUI-процесса, еще дотого как процесс этот создает самое первое (главное) окно
при загрузке хук-модуля ты получаешь управление в процедуре инициализации модуля (в осн.код.потоке тек.процесса). что и можно с успехом использовать как факт старта нового GUI-процесса, выполнив при получении управления любые нужные действия
demonyator (2004-03-13 16:01:00) [3]WH_SHELL работать будет только при создании окон верхнего уровня.
Я ставил WH_CBT хук, но там возможно ловить только создание и разрушение окон, а нужно ловить именно процессы.
Tyama (2004-03-11 23:57:00) [4]А как насчёт HOOKа? На WH_SHELL поставь и записывай все создаваемые процессы (Точнее окна)...
demonyator (2004-03-11 18:36:00) [5]Дело в том, что так я и делаю сейчас ... повесил таймер и ганяю. Но мне показалось, что есть более изящный способ. Ведь Spider всё-таки делает это как-то и совсем не тормозит систему. Может быть кто-то поделится кодом. Ведь наверняка многие сталкивались с подобной проблеммой. Неужели все пошли по пути "таймера"?
coban2k (2004-03-10 18:16:00) [6]Попробуй определять все процессы каждые n миллисекунд, на прозводительности это особо не отобразится. Для ловли необходимо реализовывать перехват API, что прежде всего небезопасно в плане стабильности всей системы (одна из лучших библиотек перехвата API для дельфи - http://www.madshi.net).