SendInput — (симуляция движения мыши)C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 SendInput — (симуляция движения мыши)

Сообщение Anonymous »

Я пытался смоделировать серию входных данных в процесс.
Единственное, чего мне не удалось добиться, — это движение мыши.
Я нашел наиболее подходящий вариант в Интернете:

Код: Выделить всё

bool mouse_move(int x, int y)
{
INPUT input;
input.type = INPUT_MOUSE;
input.mi.mouseData = 0;
input.mi.time = 0;
input.mi.dx = x*(65536/GetSystemMetrics(SM_CXSCREEN));//x being coord in pixels
input.mi.dy = y*(65536/GetSystemMetrics(SM_CYSCREEN));//y being coord in pixels
input.mi.dwFlags = MOUSEEVENTF_MOVE;//MOUSEEVENTF_ABSOLUTE
SendInput(1, &input, sizeof(input));
return true;
}
Я не понял структуру, как она была объяснена в Интернете.
Мышь продолжает перемещаться в правый нижний угол экрана независимо от того, какое значение я ввожу. (кроме 0, очевидно).

Это было возможно с помощью SetCursorPos() да, но как только я приступил к процессу, эта функция просто больше не работала . Мне нужно смоделировать это так, как будто пользователь вводит движение мыши, и до сих пор SendInput() работал. Я просто не могу понять позиционирование.

Подробнее здесь: https://stackoverflow.com/questions/316 ... simulation
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»