![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
какой лучше ипользовать метод вызова 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
это как ?