Клава!

Тема в разделе "WASM.WIN32", создана пользователем tahir, 22 мар 2009.

  1. tahir

    tahir New Member

    Публикаций:
    0
    Всем Привет!
    Я только начинаю писать под win32, вот пишу консольное приложение,
    как сделать чтобы окно не закрывалось пока пользователь не нажмет любую клавишу?
    Пробывал GetAsyncKeyState, GetKeyState,
    Помогите найти решение!
    ЗБ СПАСИБО
     
  2. Rodin

    Rodin New Member

    Публикаций:
    0
    getchar() :)
     
  3. tahir

    tahir New Member

    Публикаций:
    0
    Спасибо конечно
    а на ассемблере этого не нашел в import32.lib
     
  4. Wisder

    Wisder New Member

    Публикаций:
    0
    ReadConsoleInput
     
  5. tahir

    tahir New Member

    Публикаций:
    0
    А как написать это на асме привиди пример, у меня не получается, нужно описывать данные INPUT_RECORD?
     
  6. Wisder

    Wisder New Member

    Публикаций:
    0
    Код (Text):
    1. .386
    2. .model flat,stdcall
    3. option casemap:none
    4. include \masm32\include\windows.inc
    5. include \masm32\include\kernel32.inc
    6. includelib \masm32\lib\kernel32.lib
    7. .data
    8. hConsIn        dd ?
    9. Result         dd ?
    10. recordstr INPUT_RECORD <>
    11. .code
    12. Start:
    13.     invoke GetStdHandle,STD_INPUT_HANDLE
    14.     mov hConsIn,eax
    15. res:
    16.     invoke ReadConsoleInput,hConsIn,addr recordstr,1,addr Result
    17.     cmp recordstr.EventType,1h ;нажата клавиша клавиатуры?
    18.     jne res
    19.     cmp recordstr.KeyEvent.wVirtualScanCode,1bh ;была нажата кнопка Esc?
    20.     jne res ; если условия выполнились выходим
    21.     invoke ExitProcess,0
    22. end Start