Я хочу создать глобальный хук для мыши, который работает в XP/Vista/7, что позволит мне получить доступ к значениям X, Y, которые вводит мышь, и изменить эти значения до того, как они попадут в Windows...
Я также хочу иметь возможность имитировать ввод мыши между фактическими вводами мыши...
Например, предположим, что наши входные данные выглядели так:
1: 1,0 2: 2,0 3: 3,0 4: ?,?
Я хочу иметь возможность перехватывать входной номер 4 и запускать его через оператор «если»: если значение ввода соответствует определенным параметрам, я хочу изменить значение, добавив или вычтя из него...
USB-мышь имеет частоту опроса по умолчанию 125 Гц и максимальную 1000 Гц...
Если возможно (особенно, когда частота опроса установлена менее 1000 Гц), я хотел бы «вводить» входные данные «между» фактическими обновлениями мыши (критическими), например:
(в миллисекундах)
0008 - 1,0 0016 - 1,0 0032 - 2,0
Таким образом, мышь обновляется с частотой 125 Гц ... Могу ли я определить частоту ввода и отправлять ввод через каждый второй ввод??? Так, например, я мог бы «удвоить» частоту мыши со 125 Гц до 250 Гц и смоделировать свои собственные «промежуточные» обновления на основе любых правил, которые я установил...
Что-то из этого кажется разумным? Сейчас я работаю на C# и работал с "Gma.UserActivityMonitor" из этого туториала: http://www.codeproject.com/KB/cs/globalhook.aspx, но по какой-то причине я получаю удар по производительности, из-за которого использование этого кода с полноэкранными играми имеет непригодную задержку при вводе мыши из-за на крючок...
Может быть, мне нужно что-то написать на C++? Любая помощь будет принята с благодарностью. Спасибо!