Как имитировать нажатия клавиш клавиатуры и мышки? - C (СИ)
Формулировка задачи:
Программа постоянно запрашивает число. Если например введено число 3, то нужно чтоб программно было нажаты кнопочки Ctrl+Ald+Delete. Если введено число 8 то нужно чтоб курсор приехал в координаты 700,750 (панель задач), ПКМ, координаты 700, 695 (на строчку "диспетчер задач"), ЛКМ.
Нашел это, пока мало что понятно, разбираюсь...
http://msdn.microsoft.com/en-us/library/ms646260%28VS.85%29.aspx
http://msdn.microsoft.com/en-us/library/ms646310%28v=VS.85%29.aspx
Решение задачи: «Как имитировать нажатия клавиш клавиатуры и мышки?»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> #include <Windows.h> int main() { while(1) { int key=GetKeyState(VK_SPACE); // сохранить printf("Press SPACE\n"); // while(GetKeyState(VK_SPACE)==key) // ждать пока нажмут пробел { Sleep(500); } printf("Space have pressed\n"); // Sleep(500); } return 0; }
Объяснение кода листинга программы
- Подключение необходимых библиотек: stdio.h, stdlib.h, Windows.h
- Создание функции main()
- В бесконечном цикле while(1) выполняется следующая последовательность действий:
a. С помощью функции GetKeyState() сохраняется текущее состояние нажатия клавиши VK_SPACE (пробел) в переменную key.
b. С помощью функции printf() выводится сообщение
Press SPACE\n
(Нажмите пробел) c. Затем в бесконечном цикле while(GetKeyState(VK_SPACE)==key) ожидается нажатие клавиши пробел. d. Во время ожидания с помощью функции Sleep(500) происходит задержка в 500 миллисекунд. e. После отпускания клавиши пробел выводится сообщениеSpace have pressed\n
с помощью функции printf() f. Снова происходит задержка в 500 миллисекунд с помощью функции Sleep(500). - В конце функции main() возвращается 0, что означает успешное выполнение программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д