Вниз
Скачать: CL | DM;

Почему hook и делают в основном в dll?   Найти похожие ветки 

 
AHTOH   (2003-08-04 22:22) [0]

я конечно мало понимаю в этом вопросе, но почему во всех прмерах хуки ставят в длл?


 
Ihor Osov'yak ©   (2003-08-04 22:57) [1]

Код общесистемного хука должен внедряться в адресное пространство процесса-жертвы. А это возможно только в случае, если он будет оформлен в виде dll.

Если хук не общесистемный, а только для "своего" thread - то его код может быть и в своем exe, не обязательно dll.

Так как рассматривают в примерах в основном общесистемные хуки - то они и в dll.


 
Юрий Зотов ©   (2003-08-05 01:54) [2]

> AHTOH (04.08.03 22:22)

То же самое, что и Ihor Osov"yak © (04.08.03 22:57), но другими словами.

"Глобальность" хука обеспечивается всего лишь тем, что система подгружает его ко всем процессам в системе. Отсюда и DLL.

А неглобальный - можно и не в DLL.


 
Best Gun   (2003-08-05 02:08) [3]

А я чего-то не понял, это куда ж надо внедрить DLL, чтобы винда ее ко всем процессам подгружала? В какой такой процесс жертву?


 
Юрий Зотов ©   (2003-08-05 02:32) [4]

> Best Gun (05.08.03 02:08)

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

Причем порядок запуска программ даже и не имеет значения - результат все равно будет один и тот же.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.012 c
4-68579
SerB
2003-06-05 05:20
2003.08.21
мигание


6-68432
Иван
2003-06-17 11:16
2003.08.21
MX record look-up


1-68319
IGoRka
2003-08-08 17:58
2003.08.21
как узнать завершение роботи программи ...


3-68176
arous
2003-07-28 00:59
2003.08.21
Paradox


14-68466
kati
2003-08-06 10:38
2003.08.21
Прикладная ошибка




   Наверх