Я должен получить экран (как экран печати) в пути, таким образом, я могу получить доступ к пиксельным данным цвета, чтобы сделать некоторое распознавание изображений, после этого я должен буду генерировать события от нажатия мыши на экране, такие как щелчок левой кнопкой, перетаскивание (движущаяся мышь, в то время как кнопка нажимается, и затем выпустите его). Однажды его сделанный, изображение будет удалено.
Примечание: Я должен получить целый экран все, что видит пользователь, и я должен моделировать щелчки за окном моей программы (если это имеет какое-либо значение),
Спецификация: ubuntu Language Linux: C++
Производительность не очень важна, "экранная функция" печати будет выполняться один раз в ~10 секунд. Продолжительность процесса может составить до 24 часов, таким образом, метод должен быть стабильными и бесплатными утечками памяти (как обычный :)
Я смог сделать в окнах с победой GDI и некоторые события окон, но I'ev никакая идея, как сделать это в Linux.
Большое спасибо
Swinput - это решение для моделирования событий мыши / нажатия клавиш. Вероятно, вам нужно скомпилировать его для вашего ядра. Xorg предоставил несколько заголовков для записи событий мыши / клавиш, но я думаю, что на данный момент он не работает. Существует код C
evtest , который можно использовать для захвата событий из / dev / input / eventX
, / dev / input / mice
] файлы. Это может быть полезно.
Редактировать:
Ошибка была исправлена в расширении записи Xorg, поэтому она может работать.