![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Замерить время между нажатиями клавиш с наибольшей точностью? [D6, Win95/98, Win2k, WinXP]
alex_bf © (2004-07-26 09:16:00)Помогите мастера!
Собственно как?
Anatoly Podgoretsky (2004-08-08 14:25:00) [1]Смотрим клавиатуры, стандартные 30 знаков в минут, продвинутые до 1000, это означет, что ПуеЕшслСщгте ну ни как не подойдет.
Остается QueryPerformanCecounter или RDTSC. Влияние системы не рассматриваем, это отдельный разговор.
Sha (2004-08-08 11:19:00) [2]Alex Konshin © (08.08.04 09:01) [10]
Два последовательных нажатия могут приходиться на один тик таймера. Требуется точность раз в 10 выше.
Alex Konshin (2004-08-08 09:01:00) [3]Яне понял, а чем все-таки GetTickCount не устроил? Ее точности тебе должно хватить.
gorsash (2004-08-08 08:55:00) [4]А если попробовать так:
при нажатии предыдущей клавиши делать lasttime := now,
тогда при нажатии следующей:
interval := Now - LastTime - время между нажатиями в формате TDateTime. Количество миллисекунд можно узнать так: Round(Interval/OneMillisecond), секунд: Round(Interval/OneSecond). Константы OneMillisecond, OneSecond берутся в DateUtils
alex_bf (2004-07-27 06:35:00) [5]Чем точнее, тем лучше. Если взять максимальную скорость ввода 500 знаков в минуту ( может и задрал, но фразу в 10-15 знаков, причем набираемую постоянно можно набрать с такой скоростью ), то 60/500=0,12 сек в среднем между нажатиями. И от этого взять сотую часть, то есть где то 0,001 сек.
Anatoly Podgoretsky (2004-07-26 19:33:00) [6]alex_bf © (26.07.04 12:03) [6]
Точно какая требуется?
alex_bf (2004-07-26 12:03:00) [7]Нужно замерять промежутки времени между нажатиями клавиш в моем приложении при вводе определенной постоянной фразы. Причем это должно работать под win98/2000/XP и не быть сильно привязанном к аппаратуре. Планируется реализовать аутентификацию пользователя по клавиатурному почерку (мож кто занимался?).
[lamer]Barmaglot (2004-07-26 11:32:00) [8]Если Интел то есть встроенный счетчик... RTSD что ли точно не вспомню... Самый точный счетчик который только может быть...
Суслик (2004-07-26 11:26:00) [9]queryperformancecounter
CHES (2004-07-26 10:58:00) [10]Ну по функции GetTickCount справку можно посмотреть, а в остальном из вопроса неясно, то ли нужно замерять интервал между нажатиями клавиш во всей системе, то ли в твоем приложении...
alex_bf (2004-07-26 10:52:00) [11]а по подробней мона?
CHES (2004-07-26 10:40:00) [12]GetTickCount ?