|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
23.07.2010, 13:16 | #1 |
Регистрация: 23.07.2010
Сообщений: 5
|
Хук
Есть хук:
---------------- Код:
Вроде при нажатии Insert должно вводиться одна буква А, но их каждый раз вводиться два. Подскажите в чем проблема? Последний раз редактировалось Stilet; 23.07.2010 в 13:21. |
23.07.2010, 13:23 | #2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Может быть потому что хук учитывает не жмак поклавиши, а нажатие-отжатие, воти получается: Нажал ты клавишу - сработал хук, отжал ее - опять сработал (это предположение)
I'm learning to live...
|
23.07.2010, 13:24 | #3 |
Форумчанин
Регистрация: 16.08.2008
Сообщений: 276
|
Дело в том, что GlobalKeyBoardHook выполняется два раза: при нажатии и при отпускании клавиши... Я исправлял так:
var tmp:longword; .... tmp:=lParam shr 30; if ((tmp and 1)=0) then //Сработает при нажатии на кнопку. begin //Ваш код end; Если написать if ((tmp and 1)=1) then - сработает при отпускании кнопки
Искусственный интеллект - фигня по сравнению с естественной глупостью
|
23.07.2010, 13:49 | #4 | |
Регистрация: 23.07.2010
Сообщений: 5
|
Цитата:
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Хук и потоки | Murzilka153 | Общие вопросы C/C++ | 0 | 16.10.2009 11:59 |
Сервис и хук | francyz26rus | Win Api | 0 | 19.08.2009 13:51 |
Хук на комбинацию | W0LF | Win Api | 9 | 26.07.2009 10:33 |
Хук на клаву | HellMercenaries | Общие вопросы Delphi | 3 | 23.07.2009 21:23 |
хук | rpy3uH | Win Api | 0 | 30.10.2006 20:47 |