Загрузка...

Keystroke handler

Thread in C/C++ created by SaintStellar Jan 28, 2022. (bumped Jan 28, 2022) 350 views

  1. SaintStellar
    SaintStellar Topic starter Jan 28, 2022 0 Nov 17, 2021
    Есть у кого-то скрипт что принимает нажатие абсолютно любой клавиши а после выполняет какое либо действие (что я сам напишу).
    Нужет тот что будут работать со стандартными библиотеками под Linux в консольном приложении.
     
  2. SaintStellar
    SaintStellar Topic starter Jan 28, 2022 0 Nov 17, 2021
    все ещё актуально *поднято кнопкой*
     
  3. Bunnyscript
    Хук?
     
  4. QICIDE
    QICIDE Jan 29, 2022 Очиведно же 47 Feb 5, 2021
    немного непонятно объяснил, но можешь попробовать функу
    _kbhit()
    или
    GetKeyState()
    для считывания нажатия клавиш, например
    C
    if (GetKeyState(21) == 1)
    {
    //действие
    }
    пример с функой
    _kbhit()
    написать не могу, ибо сам никогда ей не пользовался, однако знаю о её существовании
     
    1. SaintStellar Topic starter
      QICIDE,
    2. QICIDE
      SaintStellar, тогда не знаю, наверное ничем не могу помочь)
  5. Replacer
    Replacer Jan 29, 2022 ARTIFICIAL SUICIDE 99 Jul 21, 2021
    Ну, можно мониторить нажатие через
    XSendEvent/XNextEvent
    , как вариант. Правда все равно придется работать с ксорговской либой. Вот пример под X11: https://webhamster.ru/site/page/index/articles/comp/367
    Еще, как вариант, можно поколдовать с IOCTL и EVIOCGRAB, через линуксовские
    uinput.h
    и
    input.h
    хидеры. https://titanwolf.org/Network/Articles/Article?AID=afa681ce-f9a5-49e5-b578-b24c4919ecd2
     
    1. SaintStellar Topic starter
      Replacer, спасибо, но это танцы с бубном для консольного приложения, уже нашел реализацию с использованием библиотеки ncurses, при помощи функции getch().
  6. unnamed001
    unnamed001 Feb 1, 2022 5996 Sep 2, 2020
    Скрипты на c++ не пишут)
    Либо ставь хук на wndproc либо получай состояние клавиши через GetAsyncKeyState
     
Top
Loading...