Примечание. Эта mouse_event функция была заменена.Вместо этого используйте SendInput .
Функция SendInput
последовательно вставляет события в структурах INPUT в поток ввода с клавиатуры или мыши.Эти события не перемежаются с другими событиями ввода с клавиатуры или мыши, вставленными пользователем (с помощью клавиатуры или мыши) или вызовами keybd_event
, mouse_event
или другими вызовами SendInput
.
Модифицированный код:
#include <Windows.h>
int main()
{
bool click = false;
while (1)
{
if (GetAsyncKeyState(VK_LBUTTON) & 0x8000)
{
click = true;
}
if (click == true)
{
INPUT buffer[8];
memset(buffer, 0, sizeof(INPUT) * 8);
for (int i = 0; i < 7; i++)
{
buffer[i].mi.dwFlags = MOUSEEVENTF_LEFTDOWN;
i++;
buffer[i].mi.dwFlags = MOUSEEVENTF_LEFTUP;
}
SendInput(8, buffer, sizeof(INPUT));
click = false;
}
}
return 0;
}
Положите события нажатия клавиш и ключей в массив длины 2 и отправьте их в виде комбинации.
Установите значение ki.dwFlags
для управления верхним и нижним состояниями клавиши.
Поскольку вы ожидаете, что он щелкнет 4 раза при щелчке один раз. Так что вам нужно 4 набора таких комбинаций.
Подробнее см.это чехол .