|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
Не ставится локальный хук
Код:
function KeyboardProc(Code : integer; wParam: WPARAM; lParam: LPARAM): LResult; stdcall; begin Showmessage('!!!'); end; ... ... Handle := SetWindowsHookEx(WH_KEYBOARD, @KeyboardProc, 0, ThreadID); ... Говорят, что для локального хука Dll не нужна и хук можно ставить из своего приложения, но, почему-то не ставится. ThreadID - нахожу верно - проверял. Если вместо 0 поставить Hinstance, то при делании чего-нибудь приложение на которое ставился хук завершается. |
#2
|
||||
|
||||
Код:
hook:=SetWindowsHookEx( WH_KEYBOARD_LL, @LowLevelKeyboardProc, HInstance, 0 ); Пишу программы за еду. __________________ |
#3
|
|||
|
|||
В общем, переделал на Dll... Один хрен. Только появляется ошибка "Память не может быть written".
Из формы вызываю только процедуру, все остальное делается Dll. Ставлю хук на единственный поток notepad.exe в процедуре SetHook. |