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

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

Простой hook... помогите!


Серьезный Сэм ©   (2005-01-04 19:58:00) 

Мне очень надо сделать так чтобы определенная процедура выполнялась при нажатии заданной клавиши даже если моя прога свернута.

Я пробовал

procedure a;
begin
showmessage('');
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
setWindowsHook(WH_CALLWNDPROC,pointer(@a));
end;

Не выходит, ошибку выдает. Помогите!!! спасибо...


Almaz   (2005-01-04 21:24:00) [1]

Вполне возможно, что Ваша задача может быть решена при помощи функции RegisterHotKey (пример см. FAQ на этом сайте http://www.delphimaster.ru/cgi-bin/faq.pl?look=1&id=988621066&n=15)
Если же нет, то, во-первых тип хука не WH_CALLWNDPROC, а WH_KEYBOARD, во-вторых глобальных хук должен быть реализован в DLL. Подробнее про хуки можно прочитать здесь: http://www.delphimaster.ru/articles/hooks/index.html

Удачи.


Серьезный Сэм   (2005-01-04 20:19:00) [2]

Немного порылся... пусть

function a(code: Integer; wparam: WPARAM; lparam: LPARAM): LRESULT stdcall;

но все равно же не работает!


Наверх

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