Как я могу имитировать дополнительные мыши в Windows?

Я использую MultiPoint SDK для создания совместного образовательного приложения для детей в менее богатых странах, где на каждого ученика в классе нет одного компьютера.

Поскольку нам необходимо поддерживать до 40 мышей, подключенных к одному компьютеру, нам необходим автоматизированный способ тестирования нашего программного обеспечения. SDK поддерживает столько мышей, сколько он может найти в системе, и определяет, когда мышей добавляли и удаляли. Каждая мышь отображается как "виртуальный" указатель мыши в окне WPF. Каждый ребенок имеет независимый контроль над "своим" указателем на экране.

Мы хотели бы создать тестовую систему, которая заставит Windows думать, что у нее более одной мыши. Жгут должен был бы создать эти поддельные устройства (40+) и использовать их для отправки сообщений мыши, таких как перемещение, нажатие кнопки и т. Д.

Любая помощь будет принята с благодарностью.

2 ответа

Решение

Фальсификация мышей в объеме, необходимом для MultiPoint, потребует драйвера устройства. Это не простая задача, но отнюдь не невозможная.

Наилучшим подходом, вероятно, будет HID-минидрайвер, который можно установить с помощью API установки. Водитель тогда примет DeviceIoControls, который заставил бы его симулировать отчеты ввода мыши.

Вы можете использовать dsf(каркас симуляции устройства) в ddk(комплект для разработки драйверов) для Windows, чтобы добавить эмулируемое устройство. Не беспокойтесь, его примеры находятся в vbscript, и вам просто нужно выяснить правильный формат входного отчета и коды для отправки.

Другие вопросы по тегам