Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

какой лучше ипользовать метод вызова dll? [D7, WinXP]


tradakad ©   (2005-04-25 11:23:00) 

как лучше вызывать хуки из dll?  имею ввиду и клавиатурны, и мышиный и на сообщения. есть ли в данном случае разница между явным и неявным вызовом и сказывается ли это как то на производительности системы?


tradakad   (2005-04-25 12:33:00) [1]

2Digitman спасибо за объяснение.


Юрий Зотов   (2005-04-25 12:25:00) [2]

> tradakad ©   (25.04.05 12:11) [5]

> можно ли как то определить оттранслированна ли dll  в этот
> процесс?

Раз существуют программы, которые это делают - значит, можно.

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

В частности, DLL, содержащая хуки "клавиатурны, и мышиный и на сообщения" будет подгружена к каждому процессу, использующему User32.


Digitman   (2005-04-25 12:13:00) [3]


> tradakad ©   (25.04.05 12:11) [5]
> что значит "индифферентно"
> - типа все равно :) ?


ну пусть будет так..

"безразлично", "да по барабану как",  "монопенисуально" - синонимы)


tradakad   (2005-04-25 12:11:00) [4]

2Digitman - боюсь показаться тупым, но что значит "индифферентно" - типа все равно :) ?
2Юрий Зотов
понятно. спасибо. а можно ли взять определенный процесс и определить, загруженна ли в него какая дибо dll? имею ввиду все тот же хук. когда он срабатывает, dll транслируется в АП какого то процесса. можно ли как то определить оттранслированна ли dll  в этот процесс? Спасибо.


Юрий Зотов   (2005-04-25 11:56:00) [5]

Если хук нужен программе постоянно, то никакой разницы нет. Если непостоянно, то можно загружать DLL только тогда, когда хук фактически нужен. А можно и не делать этого, тоже беда небольшая.


Digitman   (2005-04-25 11:55:00) [6]


> подразумевал динамическую и статическую загрузку dll


для процесса, устанавливающего глоб.хук, это индифферентно


tradakad   (2005-04-25 11:50:00) [7]

>что значит "явный" и "неявный" вызовы в дан.случае ?
ну я подразумевал динамическую и статическую загрузку dll
> вызывать хуки из dll
1) в dll пишу функцию-ловушку
2) там же устанавливаю хук с указанием на эту функцию
3) экспортирую эту функцию
4) из приложения загружаю dll и вызываю эту функцию


Digitman   (2005-04-25 11:39:00) [8]


> между явным и неявным вызовом


что значит "явный" и "неявный" вызовы в дан.случае ?


> вызывать хуки из dll


это как ?


Наверх

Титульная страница Поиск, карта сайта Написать письмо