Как я могу имитировать дополнительные мыши в Windows?
-
08-07-2019 - |
Вопрос
Я использую MultiPoint SDK для создания образовательного приложения для совместной работы для детей в менее обеспеченных странах, где на каждого учащегося в классе нет одного компьютера.
Поскольку нам необходимо поддерживать до 40 мышей, подключенных к одному компьютеру, нам необходим автоматизированный способ тестирования нашего программного обеспечения. SDK поддерживает столько мышей, сколько он может найти в системе, и определяет, когда мышей добавляли и удаляли. Каждая мышь отображается как «виртуальный» указатель мыши в окне WPF. Каждый ребенок имеет независимый контроль над «своим» указателем на экране.
Мы хотели бы создать тестовую систему, которая заставит Windows думать, что в ней более одной мыши. Жгут должен был бы создать эти поддельные устройства (40+) и использовать их для отправки сообщений мыши, таких как перемещение, нажатие кнопки и т. Д.
Любая помощь будет принята с благодарностью.
Решение
Фальсификация мышей в объеме, необходимом для MultiPoint, требует драйвера устройства. Это не простая задача, но отнюдь не невозможная.
Наилучшим подходом, вероятно, будет HID мини-драйвер , который вы можно установить с помощью API настройки . Затем драйвер будет принимать DeviceIoControl
, который будет имитировать отчеты о вводе с помощью мыши.
Другие советы
Вы можете использовать dsf (инфраструктуру моделирования устройства) в ddk (комплект для разработки драйверов) для Windows, чтобы добавить эмулированное устройство. Не беспокойтесь, его примеры находятся в vbscript, и вам просто нужно выяснить правильный формат входного отчета и коды для отправки. . р>