Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Консольні додатки

Реферат Консольні додатки





записаних в екранний буфер консолі функцією WriteFile lt; # justify gt; ReadConsoleInputA

Функція читає дані з консольного буфера введення і видаляє їх з буфера.

BOOL ReadConsoleInput (hConsoleInput, _RECORD lpBuffer, nLength, lpNumberOfEventsRead

); - дескриптор консольного буфера введення.

lpBuffer - покажчик на масив структур INPUT_RECORD lt; # justify gt; ExitProcess

Функція закінчує роботу процесу і всіх його потоков.ExitProcess (uExitCode

);

uExitCode - визначає код виходу для процесу, і для всіх потоків, які завершують роботу в результаті виклику цієї функції. Для того, щоб отримати значення виходу з процесу необхідно використовують функцію GetExitCodeProcess lt; # justify gt; KEY_EVENT - клавіатурне подія

СмещеніеДлінаЗначеніе + 44Прі натисканні клавіші значення поля більше нуля. + 82Колічество повторів при утриманні клавіші. + 102Віртуальний код клавіші. + 122Скан-код клавіші. + 142Для функції ReadConsoleInputA-молодший байт дорівнює ASCII-коду клавіші. Для функції ReadConsoleInputW слово містить код клавіші в двухбайтном кодуванні (Unicode). + 164Содержітся стану керуючих клавіш. Може бути сумою наступних констант: RIGHT_ALT_PRESSED equ 1h LEFT_ALT_PRESSED equ 2h RIGHT_CTRL_PRESSED equ 4h LEFT_CTRL_PRESSED equ 8h SHIFT_PRESSED equ 10h NUMLOCK_ON equ 20h SCROLLLOCK_ON equ 40h CAPSLOCK_ON equ 80h ENHANCED_KEY equ 100h Сенс констант очевидний. _EVENT - Подія з мишею

СмещеніеДлінаЗначеніе + 44Младшее слово - Х-координата курсора миші, старше слово - Y-координата миші. + 84Опісивает стан кнопок миші. Перший біт - ліва кнопка, другий біт - права кнопка, третій біт - середня кнопка. Біт встановлений - кнопку натиснуто. + 124Состояніе керуючих клавіш. Аналогічно попередній таблиці. + 164Может містити наступні значення: MOUSE_MOV equ 1h; був рух миші DOUBLE_CL equ 2h; був подвійне клацання

Лістинг ПРОГРАМИ

. asm

..386P

; плоска модель

. MODEL FLAT, stdcall

; константи

STD_OUTPUT_HANDLE equ - 11_INPUT_HANDLE equ - 10

; тип собитія_EV equ 1h_EV equ 2h

; атрибути цветов_BLUE equ 1h; синій колір букв_GREEN equ 2h; зелений колір букв_RED equ 4h; червоний колір букв_INTENSITY equ 8h; підвищена інтенсівность_BLUE equ 10h; синє світло фона_GREEN equ 20h; зелений колір фона_RED equ 40h; червоний колір фону

BACKGROUND_INTENSITY equ 80h; підвищена інтенсивність=2h + 8h; колір виведеного тексту=1h + 2h + 8h; колір виведеного тексту 2

; прототипи зовнішніх процедур

EXTERN GetStdHandle @ 4: NEARWriteConsoleA @ 20: NEARSetConsoleCursorPosition @ 8: NEARSetConsoleTitleA @ 4: NEARFreeConsole@0:NEARAllocConsole@0:NEARCharToOemA@8:NEARSetConsoleCursorPosition@8:NEARSetConsoleTextAttribute@8:NEARReadConsoleA@20:NEARSetConsoleScreenBufferSize@8:NEARExitProcess@4:NEARReadConsoleInputA@16:NEAR

; директиви компонувальнику для підключення бібліотекc: masm32 lib user32.libc: masm32 lib kernel32.lib

; ------------------------------------------------------------ STRUCWORD? WORD? ENDS

; сегмент даних

_ DATA SEGMENT DWORD PUBLIC USE32 DATA DWORD? DWORD? DB Введіть рядок: , 13,10,0DB Rabota konsoli , 0 DB 200 dup (?) DWORD? ; кількість виведених сімволовCOOR lt;? gt;

C0 DWORD? _KEY WORD 9 dup (?)

_ DATA ENDS

; сегмент коду

_ TEXT SEGMENT DWORD PUBLIC USE32 CODE :

; перекодіруя строкуOFFSET STR1OFFSET STR1CharToOemA @ 8

; утворити консоль

; спочатку звільнити вже існуючу

CALL FreeConsole @ 0AllocConsole @ 0

; отримати HANDL1 вводаSTD_INPUT_HANDLEGetStdHandle @ 4

MOV HANDL1, EAX

; отримати HANDL виведення

PUSH STD_OUTPUT_HANDLEGetStdHandle @ 4

MOV HANDL, EAX

; встановити новий розмір вікна консолі

MOV CRD.X, 100CRD.Y, 25CRDEAXSetConsoleScreenBufferSize @ 8

; задати заголовок вікна консолі

PUSH OFFSET STR2SetConsoleTitleA @ 4

; встановити позицію курсораCRD.X, 0

MOV CRD.Y, 0CRDHANDL

CALL SetConsoleCursorPosition @ 8

; задати колірні атрибути виведеного т...


Назад | сторінка 4 з 5 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Колір і його застосування в дизайні
  • Реферат на тему: Колір ї світоспрійняття
  • Реферат на тему: Колір в інтер'єрі
  • Реферат на тему: Колір в костюмі
  • Реферат на тему: Фотони, спектри і колір