Вниз
Скачать: CL | DM;

Как вызвать программное нажатие клавиши в играх?   Найти похожие ветки 

← →
Danco ©   (2008-06-06 16:55) [0]

Подскажите пожалуйста, как вызвать программное нажатие клавиши в играх?

Допустим нужно нажать стрелку вверх:

keybd_event(VK_UP, 0, 0, 0);
keybd_event(VK_UP, 0, KEYEVENTF_KEYUP, 0);


Выше приведенный код работает, но в игре не хочет, никаких действий не происходит.

Как обойти эту проблему и вообще возможно ли это? Заранее СПС!


← →
ZENsan ©   (2008-06-06 18:44) [1]

KeyboardEvent


← →
Danco ©   (2008-06-07 17:30) [2]


> ZENsan ©   (06.06.08 18:44) [1]
>
> KeyboardEvent

Нет такой функции ...или я что то не так понял? =)


← →
redlord   (2008-06-07 19:13) [3]

keybd_event
но боюсь она в приложениях opengl и directx не прокатит так как там нет окон.
тебе надо в драйвер устройств ввода значения посылать
SendInput


← →
Renegat   (2008-06-07 19:42) [4]

А если "вводить" напрямую в буфер клавиатуры (с помощью OUT 64h)?


← →
Danco ©   (2008-06-07 21:11) [5]

уфф.... оказывается не так все просто ...может кто нить написать пример? а то вообще не понимаю что куда? =(


← →
Renegat   (2008-06-07 21:20) [6]

http://www.wasm.ru/article.php?article=apihook_3
Читаем и фкуриваем до полного просветления.
Там в примере на холодный сброс ЦП есть строчка OUT 64h, AL. Пишешь в AL любой байт - и передаётся нужный символ. Запомни одно: это не сам символ, а лишь его сканкод.


← →
Danco ©   (2008-06-07 22:53) [7]


> Читаем и фкуриваем до полного просветления.

Спасибо за статью, почитал , но так ничего и не вкурил. Пробовал одни ошибки выскакивают.

Можно пожалуйста простой работающий пример:
procedure xxx();
begin

end;


Три дня мучаюсь, ответа найти никак не могу. =))


← →
Amoeba ©   (2008-06-08 00:17) [8]


> Danco ©   (06.06.08 16:55)
>
> Подскажите пожалуйста, как вызвать программное нажатие клавиши
> в играх?

Общего абстрактного решения нет. Для каждой игры  - свое решение.


← →
Danco ©   (2008-06-14 01:05) [9]


> Общего абстрактного решения нет. Для каждой игры  - свое
> решение.

Вообще для каждой программы свое решение :)

Весь инет перекопал ничего не нашел. Плохо искал наверно. Допустим у этой игры есть окно, можно ли отыскать и нажать с помошью перехвата сообщения? И каким методом это делается? :)



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.01 c
15-1211817205
Tualatin
2008-05-26 19:53
2008.07.13
ресурс


15-1211962980
{RASkov}
2008-05-28 12:23
2008.07.13
defrag


15-1212046676
Azize
2008-05-29 11:37
2008.07.13
GeForse vs ATI


15-1212392855
Nous Mellon_
2008-06-02 11:47
2008.07.13
Срочная халтурка для С++ кодера


15-1212050322
__mirage_
2008-05-29 12:38
2008.07.13
не надоело варианты моего ника регистрировать?




   Наверх