Есть Делфи 7 и оптическая мышь. Достоверно известно, что точность перемещения оптической мыши высочайшая! По крайней мере по бумажному листу при отключенных примочках винды, она запросто описывает замкнутый контур любой сложности, который умещается на листе а4 (суть такая, что на листе рисуешь контур, ведешь по нему мышь, а на экране рисуется он же и начало и конец идиеально совпадают).
Получение координат мыши в событиях канвы (проверял), или хуком (не проверял, но судя по изученным исходникам так и есть) уже несет отпечаток настроек винды.
Мне же надо получить относительно перемещение мыши (независимо от того, уперся курсор в край экрана или нет). Т.е. нужно отлавливать перемещение мыши! (а не курсора).
Насколько я понимаю, когда мышь сдвигается, возникает какое-то событие, которое обрабатывает драйвер. Из работы контроллера мыши известно, что он выдает смещение по x и по y (информация из datasheet на контроллер Agilent 2610, используемый в подопотной мышке). После того как драйвер распознает перемещение, он отдает смещение винде, и она рассчитывает положение курсора.
Если я прав, то как получить смещение, которое дает драйвер винде?
Если я не прав, то поясните, или дайте ссылочку где прочитать, как это все работает?
И самое главное, как получить смещение мыши, а не курсора?
Получение координат мыши в событиях канвы (проверял), или хуком (не проверял, но судя по изученным исходникам так и есть) уже несет отпечаток настроек винды.
Мне же надо получить относительно перемещение мыши (независимо от того, уперся курсор в край экрана или нет). Т.е. нужно отлавливать перемещение мыши! (а не курсора).
Насколько я понимаю, когда мышь сдвигается, возникает какое-то событие, которое обрабатывает драйвер. Из работы контроллера мыши известно, что он выдает смещение по x и по y (информация из datasheet на контроллер Agilent 2610, используемый в подопотной мышке). После того как драйвер распознает перемещение, он отдает смещение винде, и она рассчитывает положение курсора.
Если я прав, то как получить смещение, которое дает драйвер винде?
Если я не прав, то поясните, или дайте ссылочку где прочитать, как это все работает?
И самое главное, как получить смещение мыши, а не курсора?