Эмуляция нажатия клавиш...Нид Хелп

Тема в разделе "WASM.BEGINNERS", создана пользователем KeyMan, 12 сен 2009.

  1. KeyMan

    KeyMan New Member

    Публикаций:
    0
    Регистрация:
    12 сен 2009
    Сообщения:
    11
    Вообщем, у нас есть игра в которую мне надо эмулить пару нажатий клавиш, на асме не разу не кодил, высокоуровневые языки не спасли, вин апи не помогает, проблема оч. непонятная для меня...(игра так то принимает нажатия клавиш, НО только первые пару нажатий, а потом отказывается, ПРИЧЕМ, если я нажму ЛЮБУЮ клавишу на клавиатуре паралельно моя программа опять может пару нажатий успешно послать. Исходник мой тест программы

    Начало бесконечного цикла
    Шлем нажатие кнопки
    пауза 1-2 сек
    Конец бесконечного цикла

    Плизз помогите исходником на асме, так как тут нужен необычный подход. Мб через самый низкий уровень, или через драйвер все это сделать. Вообщем нужна помощь. Заранее Спасибо. (если отписалься не там где надо просто перенести тему)
     
  2. Treant

    Treant Member

    Публикаций:
    0
    Регистрация:
    24 май 2009
    Сообщения:
    261
    Через DirectInput там наверно...
     
  3. x0man

    x0man New Member

    Публикаций:
    0
    Регистрация:
    23 мар 2008
    Сообщения:
    358
    Код (Text):
    1. Начало бесконечного цикла
    2. Шлем нажатие кнопки
    3. пауза 1-2 сек
    4. Конец бесконечного цикла
    Новомодный HLL :)
     
  4. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    [​IMG]
     
  5. VaZoNeZ

    VaZoNeZ New Member

    Публикаций:
    0
    Регистрация:
    12 июл 2009
    Сообщения:
    121
    Код (Text):
    1. invoke keybd_event, VK_A,1,0,0
    2. invoke keybd_event, VK_A,1,KEYEVENTF_KEYUP,0
     
  6. KeyMan

    KeyMan New Member

    Публикаций:
    0
    Регистрация:
    12 сен 2009
    Сообщения:
    11
    спс, попробую на днях, отпишусь...
     
  7. Com[e]r

    Com[e]r Com[e]r

    Публикаций:
    0
    Регистрация:
    20 апр 2007
    Сообщения:
    2.624
    Адрес:
    ого..
    x0man
    ы)

    но, кстати, в случае с DInput, keybd_event работать отказывается, что вынуждает хукать DI или лезть в ринго.
     
  8. KeyMan

    KeyMan New Member

    Публикаций:
    0
    Регистрация:
    12 сен 2009
    Сообщения:
    11
    Половину слов не понял...)
     
  9. Com[e]r

    Com[e]r Com[e]r

    Публикаций:
    0
    Регистрация:
    20 апр 2007
    Сообщения:
    2.624
    Адрес:
    ого..
    Direct Input. эмуляция нажатия кнопок, порно, малолетки, билл гейтс, реферат, скачать бесплатно
    )
     
  10. KeyMan

    KeyMan New Member

    Публикаций:
    0
    Регистрация:
    12 сен 2009
    Сообщения:
    11
    Может быть есть какая-нибудь готовая длл, чтобы я в своей программе (не на асме) просто вызвал от туда функции?
     
  11. KeyMan

    KeyMan New Member

    Публикаций:
    0
    Регистрация:
    12 сен 2009
    Сообщения:
    11
    Блин напишите полный исходник с функицией
    Код (Text):
    1. invoke keybd_event, VK_A,1,0,0
    2. invoke keybd_event, VK_A,1,KEYEVENTF_KEYUP,0
    я бы сразу проверил, а то чето пробую скомпелить эксе, а фасм отказывается...

    на подобии
    Код (Text):
    1. @ff:
    2. invoke keybd_event, VK_A,1,0,0
    3. invoke keybd_event, VK_A,1,KEYEVENTF_KEYUP,0
    4. jmp @ff
    , но чтобы слалось допустим нажатие кнопки "4"с последуюей паузойв в 0.5 сек
     
  12. VaZoNeZ

    VaZoNeZ New Member

    Публикаций:
    0
    Регистрация:
    12 июл 2009
    Сообщения:
    121
  13. KeyMan

    KeyMan New Member

    Публикаций:
    0
    Регистрация:
    12 сен 2009
    Сообщения:
    11
    хмм, а ниче что там для C++, или это норм? мне ведь вроде как через фасм компилировать. Ах да, получаеться мне еще надо инклюдить эти библиотеки?)
     
  14. KeyMan

    KeyMan New Member

    Публикаций:
    0
    Регистрация:
    12 сен 2009
    Сообщения:
    11
    2VaZoNeZ, мб ты быстрее с компилишь просто чем обьяснишь? а то я на асме то ни разу...
     
  15. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    http://www.wasm.ru/forum/viewtopic.php?pid=323135#p323135
    цитирую: "не работает", "глючит", "не .... (какое-либо-действие)" - это НЕ !! описания ошибок.
     
  16. KeyMan

    KeyMan New Member

    Публикаций:
    0
    Регистрация:
    12 сен 2009
    Сообщения:
    11
  17. VaZoNeZ

    VaZoNeZ New Member

    Публикаций:
    0
    Регистрация:
    12 июл 2009
    Сообщения:
    121
    ок, а так?

    Код (Text):
    1. TC_stupid_lamer:
    2.  
    3. push 1F4h
    4. call Sleep
    5.  
    6. push 0
    7. push 0
    8. push 1
    9. push 34h
    10. call keybd_event
    11.  
    12. push 0
    13. push 2
    14. push 1
    15. push 34h
    16. call keybd_event
    17.  
    18. jmp TC_stupid_lamer
     
  18. warsem

    warsem Сеня

    Публикаций:
    0
    Регистрация:
    26 янв 2005
    Сообщения:
    170
    Адрес:
    Германия, NRW
  19. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    KeyMan
    Значит у тебя не подключен файл с макросом invoke. Ибо это не команда а макрос
     
  20. KeyMan

    KeyMan New Member

    Публикаций:
    0
    Регистрация:
    12 сен 2009
    Сообщения:
    11