. , - . .
, .
ReadConsoleOutputCharacter | Unicode ANSI . |
WriteConsoleOutputCharacter | Unicode ANSI . |
ReadConsoleOutputAttribute | . |
WriteConsoleOutputAttribute | . |
FillConsoleOutputCharacter | Unicode ANSI . |
FillConsoleOutputAttribute | . |
, .
. 䳿 (WORD EventType) . 䳿 : KEY_EVENT, MOUSE_EVENT, WINDOW_BUFFER_SIZE_EVENT, MENU_EVENT, FOCUS_EVENT ( , , , , ).
. :
typedef struct _KEY_EVENT_RECORD { BOOL bKeyDown; WORD wRepeatCount; WORD wVirtualKeyCode; WORD wVirtualScanCode; union { WCHAR UnicodeChar; CHAR AsciiChar; } uChar; DWORD dwControlKeyState; } KEY_EVENT_RECORD; | typedef struct _MOUSE_EVENT_RECORD { COORD dwMousePosition; DWORD dwButtonState; DWORD dwControlKeyState; DWORD dwEventFlags; } MOUSE_EVENT_RECORD; |
:
EventType | Event | |||||
MOUSE EVENT | MOUSE_EVENT_RECORD | |||||
MOUSE_EVENT | dwMousePosition | dwButtonState | dwControlKeyState | dwEventFlags | ||
wX | wY | |||||
KEY EVENT | KEY_EVENT_RECORD | |||||
KEY_EVENT | bKeyDown | wRepeatCount | wVirtualKeyCode | wVirtualScanCode | uChar | dwControlKeyState |
, (dwButtonState), (dwControlKeyState) 䳿 (dwEventFlags). ֳ .
dwButtonState: FROM_LEFT_1ST_BUTTON_PRESSED RIGHTMOST_BUTTON_PRESSED FROM_LEFT_2ND_BUTTON_PRESSED FROM_LEFT_3RD_BUTTON_PRESSED FROM_LEFT_4TH_BUTTON_PRESSED | dwControlKeyState: RIGHT_ALT_PRESSED LEFT_ALT_PRESSED RIGHT_CTRL_PRESSED LEFT_CTRL_PRESSED SHIFT_PRESSED NUMLOCK_ON SCROLLLOCK_ON CAPSLOCK_ON ENHANCED_KEY |
dwEventFlags: DOUBLE_CLICK MOUSE_MOVED MOUSE_WHEELED |
|
|
:
:
BOOL ReadConsoleInput(
HANDLE hConsoleInput, //
PINPUT_RECORD lpBuffer, //
DWORD nLength, // ,
LPDWORD lpNumberOfEventsRead //
);
:
BOOL WriteConsoleOutputCharacter(
HANDLE hConsoleOutput, //
LPCTSTR lpCharacter, // ,
DWORD nLength, //
COORD dwWriteCoord, //
LPDWORD lpNumberOfCharsWritten //
);
:
BOOL SetConsoleCursorPosition(
HANDLE hConsoleOutput, //
COORD dwCursorPosition //
);
1. . Win32 API: GetComputerName, GetUserName, GetSystemInfo, GetSystemMetrics, GetVersionEx, GetKeyboardType, GetWindowsDirectory, GetSystemDirectory, GetSysColor.
2. wsprintf, WriteConsole.
3. 䳿 . SetConsoleCursorPosition, wsprintf, WriteConsole,