Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.08;
Скачать: [xml.tar.bz2];




Вниз

Запускаемые приложения 


Turalyon   (2002-02-05 13:41) [0]

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



Fellomena   (2002-02-05 13:50) [1]

Задача решается несколькими путями:
1). ставишь hook (устанавливаешь из dll) на создание процесса и в процедуре его обработки записываешь всё что тебе надо в лог-файл, при этом лучше это дело синхронизировать, что бы конфликтов не возникало при одновременном запуске прог и попытки писать в уже открытый файл.
2). По таймеру делаешь "слепок" всех процессов и сравниваешь с предыдущим слепком, если что-то прибавилось - пишешь в лог то, что прибавилось - этот метод коряв, но работать будет (хреновато).

Лучше конечно ловушку ставить.



Turalyon   (2002-02-06 08:26) [2]

>Fellomena
Спасибо большое за советы, в общем по поводу второго способа, я так и подумал с самого начала, в общем так и начинал делать...
А по поводу 1 способа, я понимаю, что это правильнее, но вчера облазил кучу всяких хелпов про hook, все что я нашел - это в основном общаая информация. Может быть у кого есть статьи с примерами, или просто примеры??? Был бы очень признателен.



Fellomena   (2002-02-06 14:58) [3]

Глянь
http://www.delphikingdom.com/helloworld/usesdll.htm
там есть пример глобального hook-а, работающий...
Только есть некоторые казусы в примере, например несколько таких же hook-ов, поставленных аналогичным способом работать не будут, будет отрабатывать только последний.
Ну если ты один hook так как там написанно поставишь - то всё ok будет.
... ну и конечно при установке hook-а тебе не WH_GETMESSAGE надо использовать ;)
Дальше - смотри SDK 8)



Turalyon   (2002-02-06 16:19) [4]

>Fellomena
Спасиб большое. Полез читать. :)




Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.08;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.021 c
1-22697           Oleg_K                2002-03-16 11:07  2002.04.08  
Рахзная ширина столбцов в StringGrid e


1-22683           Сатир                 2002-03-26 13:37  2002.04.08  
Получение списка экспортируемых функций


1-22658           LiNkS                 2002-03-27 11:35  2002.04.08  
RxRichEdit


1-22740           snoup                 2002-03-26 23:47  2002.04.08  
Почему не работает вот такая фигня: if timeover = 10 then label1.color:=clred;??????


4-22882           Pete                  2002-02-05 15:54  2002.04.08  
Окно поверх всего и...