... DLL, блин, Хелп!!!
1237
1
Поставил хук на сообщения клавы: функция обратного вызова почему-то срабатывает два раза, будто она в двух потоках выпоняется :-)
Вопще-то, врятли: если нажимать на ключевую клавишу ОЧЕНЬ резко, то всё OK: появляется всего один признак нажатия.
Вопрос: как можно из потока сообщений, обработав первое, игнорировать остальные в теч. нек. времени?
зы. пробовал GetTickCount() засекать время, но не получается!!! опять же, такое впечатление, что потока 2!!
Вопще-то, врятли: если нажимать на ключевую клавишу ОЧЕНЬ резко, то всё OK: появляется всего один признак нажатия.
Вопрос: как можно из потока сообщений, обработав первое, игнорировать остальные в теч. нек. времени?
зы. пробовал GetTickCount() засекать время, но не получается!!! опять же, такое впечатление, что потока 2!!
Может юзать QueryPerformanceCounter() ? У GetTickCount() разрешение слишком низкое (миллисекунды), а события генерятся слишком быстро. Еще лучше предвычислить пороговое количество тиков в соответствии с QueryPerformanceFrequency и смотреть по результату QueryPerformaceCounter не превышает разницасо значением от во время прошлого события это число.
А вообще тут что-то не так. Не должно так быстро два события приходить, может считается нажатие и отпускание кнопки, т.е. два события ?
А вообще тут что-то не так. Не должно так быстро два события приходить, может считается нажатие и отпускание кнопки, т.е. два события ?