Проверте Код API функции(GetAsyncKeyState), что я делаю не так?

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

  1. beginerHacker

    beginerHacker New Member

    Публикаций:
    0
    Регистрация:
    14 дек 2009
    Сообщения:
    30
    .386
    .model flat, stdcall
    option casemap :none
    ;#########################################################################
    include \masm32\include\windows.inc
    include \masm32\include\user32.inc
    include \masm32\include\kernel32.inc

    includelib \masm32\lib\user32.lib
    includelib \masm32\lib\kernel32.lib
    ;#########################################################################
    .data

    ;#########################################################################
    .code
    start:
    invoke GetAsyncKeyState, 31d ;Ловим клаву (Единицу)
    cmp eax, 31d ;сравниваем клаву м виртуальным кодом
    jnz start ;Если не поймали, повторяем цикл, иначе EXIT

    invoke ExitProcess,NULL

    end start



    Не вдупляюсь, что не так?
    Прога тупа висит когда я нажимаю на 1. А должна выходить...
     
  2. 7mm

    7mm New Member

    Публикаций:
    0
    Регистрация:
    15 дек 2009
    Сообщения:
    442
    Читайте MSDN.

     
  3. JCronuz

    JCronuz New Member

    Публикаций:
    0
    Регистрация:
    26 сен 2007
    Сообщения:
    1.240
    Адрес:
    Russia
    Код (Text):
    1. invoke GetAsyncKeyState, VK_5
    2.  .if eax !=0
    3.         invoke Peek
    4.         invoke MessageBeep, MB_OK
    5.  .endif
     
  4. JCronuz

    JCronuz New Member

    Публикаций:
    0
    Регистрация:
    26 сен 2007
    Сообщения:
    1.240
    Адрес:
    Russia
    В твоем случае VK_1 для еденицы