Подпишитесь на наш Telegram-канал, чтобы всегда быть в курсе важных обновлений! Перейти

C++ Keybd_event

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
23 Авг 2022
Сообщения
56
Реакции
1
Привет ребята!
Вобщем нужен код который будет при нажатие на клавишу "Q" с эмулирует нажатие 1 и получит в итоге две "QQ" получается за 1 нажатия делаем 2 буквы.
Помогите бедолаге.
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Привет ребята!
Вобщем нужен код который будет при нажатие на клавишу "Q" с эмулирует нажатие 1 и получит в итоге две "QQ" получается за 1 нажатия делаем 2 буквы.
Помогите бедолаге.
C++:
Expand Collapse Copy
#include <windows.h>
#include <iostream>

int main()
{
    while ( true )
    {
        if ( GetAsyncKeyState( 0x51 ) )
        {
            keybd_event( 0x51, 0, NULL, 0 );
            keybd_event( 0x51, 0, KEYEVENTF_KEYUP, 0 );
            break;
        }
    }
}
 
C++:
Expand Collapse Copy
#include <windows.h>
#include <iostream>

int main()
{
    while ( true )
    {
        if ( GetAsyncKeyState( 0x51 ) )
        {
            keybd_event( 0x51, 0, NULL, 0 );
            keybd_event( 0x51, 0, KEYEVENTF_KEYUP, 0 );
            break;
        }
    }
}
Спасибо! А вот задержку можно реализовать как-то? Выползает вместо 2 QQ очень много QQQQQQQQQQ пробывал sleep(200) фпс в ноль падает.
 
Привет ребята!
Вобщем нужен код который будет при нажатие на клавишу "Q" с эмулирует нажатие 1 и получит в итоге две "QQ" получается за 1 нажатия делаем 2 буквы.
Помогите бедолаге.
C++:
Expand Collapse Copy
#include <Windows.h>


void ClickKeyboard(DWORD click_amount, BYTE key);

int main() {
    ClickKeyboard(3/*скок раз тебе нужно кликнуть*/, 'Q');

    Sleep(-1);
}

void ClickKeyboard(DWORD click_amount, BYTE key) {
    if (click_amount == NULL || key == NULL)
        return;

    for (int i = 0; i < click_amount; ++i) {
        keybd_event(key, NULL, KEYEVENTF_EXTENDEDKEY, NULL);
        keybd_event(key, NULL, KEYEVENTF_KEYUP, NULL);
    }
}
 
Назад
Сверху Снизу