Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Я пишу программу на С++, программа изначально писалась для винды, но появилась необходимость запускать на линукс.

Trollollofcka Trollollofcka Ученик (163), закрыт 1 год назад
По сути моя программа эмулирует нажатия клавиш, движения мышкой и клики. Это я делал с помощью функций keybd_event, SetCursorPos, mouse_event и ещё Sleep. Все эти функции находятся в библиотеке windows.h, понятное дело на линуксе я её использовать не могу. Я знаю, что есть варианты использовать виртуальную машину, но это уже какое-то извращение, на мой взгляд, я бы хотел найти возможность просто заменить эти 4 функции какими-то аналогами, которые не будут зависить от ОС. Если знаете аналоги, подскажите или подайте идею в какую сторону посмотреть.
Лучший ответ
Василий Дмитров Мыслитель (7838) 1 год назад
Пни, как узнаешь ответ. Самому интересно, есть ли такое
Остальные ответы
Иван Сигаев Искусственный Интеллект (150317) 1 год назад
Не существует аналогов данным функциям, которые не зависят от ОС
user49913 Просветленный (38654) 1 год назад
а) wine
б) переписать с использованием кроссплатформенной сторонней библиотеки, реализующей абстрактные обёртки над нужными тебе функциями (по одним лишь функциям не совсем понятно, что на них пытаются написать, в общем случае тебе нужно искать что-то типа c++ cross platform global hook library, но в целом выглядит, как будто ты пытаешься написать какую-то ерунду и тебе нужен просто нормальный гуй - qt?)
в) пошарить в стандартной библиотеке языка, например, Sleep => std::chrono, sth::this_thread::sleep_for
Хост Алма Мыслитель (7426) 1 год назад
в графической библиотеке GTK для ОС Linux есть похожие функции
Похожие вопросы