8#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA) && !defined(NOGDI)
14#pragma warning(disable:4820)
20#if (_WIN32_WINNT >= _WIN32_WINNT_WINXP)
21#define ATTACH_PARENT_PROCESS ((DWORD)-1)
28#define CONSOLE_WINDOWED 0
29#define CONSOLE_FULLSCREEN 1
30#define CONSOLE_FULLSCREEN_HARDWARE 2
33#define CONSOLE_FULLSCREEN_MODE 1
34#define CONSOLE_WINDOWED_MODE 2
39#define FOREGROUND_BLUE 0x0001
40#define FOREGROUND_GREEN 0x0002
41#define FOREGROUND_RED 0x0004
42#define FOREGROUND_INTENSITY 0x0008
43#define BACKGROUND_BLUE 0x0010
44#define BACKGROUND_GREEN 0x0020
45#define BACKGROUND_RED 0x0040
46#define BACKGROUND_INTENSITY 0x0080
48#define COMMON_LVB_LEADING_BYTE 0x0100
49#define COMMON_LVB_TRAILING_BYTE 0x0200
50#define COMMON_LVB_GRID_HORIZONTAL 0x0400
51#define COMMON_LVB_GRID_LVERTICAL 0x0800
52#define COMMON_LVB_GRID_RVERTICAL 0x1000
53#define COMMON_LVB_REVERSE_VIDEO 0x4000
54#define COMMON_LVB_UNDERSCORE 0x8000
56#define COMMON_LVB_SBCSDBCS \
57 (COMMON_LVB_LEADING_BYTE | COMMON_LVB_TRAILING_BYTE)
62#define CONSOLE_TEXTMODE_BUFFER 1
63#define CONSOLE_GRAPHICS_BUFFER 2
69#define CTRL_BREAK_EVENT 1
70#define CTRL_CLOSE_EVENT 2
71#define CTRL_LAST_CLOSE_EVENT 3
72#define CTRL_LOGOFF_EVENT 5
73#define CTRL_SHUTDOWN_EVENT 6
78#define ENABLE_PROCESSED_INPUT 0x0001
79#define ENABLE_LINE_INPUT 0x0002
80#define ENABLE_ECHO_INPUT 0x0004
81#define ENABLE_WINDOW_INPUT 0x0008
82#define ENABLE_MOUSE_INPUT 0x0010
83#define ENABLE_INSERT_MODE 0x0020
84#define ENABLE_QUICK_EDIT_MODE 0x0040
85#define ENABLE_EXTENDED_FLAGS 0x0080
86#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA)
87#define ENABLE_AUTO_POSITION 0x0100
89#if (_WIN32_WINNT >= _WIN32_WINNT_WIN10)
90#define ENABLE_VIRTUAL_TERMINAL_INPUT 0x0200
96#define ENABLE_PROCESSED_OUTPUT 0x0001
97#define ENABLE_WRAP_AT_EOL_OUTPUT 0x0002
102#define CONSOLE_NO_SELECTION 0x0000
103#define CONSOLE_SELECTION_IN_PROGRESS 0x0001
104#define CONSOLE_SELECTION_NOT_EMPTY 0x0002
105#define CONSOLE_MOUSE_SELECTION 0x0004
106#define CONSOLE_MOUSE_DOWN 0x0008
111#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA)
113#define HISTORY_NO_DUP_FLAG 0x0001
115#define CONSOLE_OVERSTRIKE 0x0001
122#define CONSOLE_READ_NOREMOVE 0x0001
123#define CONSOLE_READ_NOWAIT 0x0002
128#define KEY_EVENT 0x0001
129#define MOUSE_EVENT 0x0002
130#define WINDOW_BUFFER_SIZE_EVENT 0x0004
131#define MENU_EVENT 0x0008
132#define FOCUS_EVENT 0x0010
137#define RIGHT_ALT_PRESSED 0x0001
138#define LEFT_ALT_PRESSED 0x0002
139#define RIGHT_CTRL_PRESSED 0x0004
140#define LEFT_CTRL_PRESSED 0x0008
141#define SHIFT_PRESSED 0x0010
142#define NUMLOCK_ON 0x0020
143#define SCROLLLOCK_ON 0x0040
144#define CAPSLOCK_ON 0x0080
145#define ENHANCED_KEY 0x0100
148#define NLS_DBCSCHAR 0x00010000
149#define NLS_ALPHANUMERIC 0x00000000
150#define NLS_KATAKANA 0x00020000
151#define NLS_HIRAGANA 0x00040000
152#define NLS_ROMAN 0x00400000
153#define NLS_IME_CONVERSION 0x00800000
154#define NLS_IME_DISABLE 0x20000000
159#define FROM_LEFT_1ST_BUTTON_PRESSED 0x0001
160#define RIGHTMOST_BUTTON_PRESSED 0x0002
161#define FROM_LEFT_2ND_BUTTON_PRESSED 0x0004
162#define FROM_LEFT_3RD_BUTTON_PRESSED 0x0008
163#define FROM_LEFT_4TH_BUTTON_PRESSED 0x0010
168#define MOUSE_MOVED 0x0001
169#define DOUBLE_CLICK 0x0002
170#define MOUSE_WHEELED 0x0004
171#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA)
172#define MOUSE_HWHEELED 0x0008
227#if defined(_WINGDI_) && !defined(NOGDI)
283#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA)
317#if (_WIN32_WINNT >= _WIN32_WINNT_WINXP)
450#if (_WIN32_WINNT >= _WIN32_WINNT_WIN2K)
747#define AddConsoleAlias AddConsoleAliasW
748#define GetConsoleAlias GetConsoleAliasW
749#define GetConsoleAliases GetConsoleAliasesW
750#define GetConsoleAliasesLength GetConsoleAliasesLengthW
751#define GetConsoleAliasExes GetConsoleAliasExesW
752#define GetConsoleAliasExesLength GetConsoleAliasExesLengthW
753#define GetConsoleTitle GetConsoleTitleW
754#define PeekConsoleInput PeekConsoleInputW
755#define ReadConsole ReadConsoleW
756#define ReadConsoleInput ReadConsoleInputW
757#define ReadConsoleInputEx ReadConsoleInputExW
758#define ReadConsoleOutput ReadConsoleOutputW
759#define ReadConsoleOutputCharacter ReadConsoleOutputCharacterW
760#define ScrollConsoleScreenBuffer ScrollConsoleScreenBufferW
761#define SetConsoleTitle SetConsoleTitleW
762#define WriteConsole WriteConsoleW
763#define WriteConsoleInput WriteConsoleInputW
764#define WriteConsoleInputVDM WriteConsoleInputVDMW
765#define WriteConsoleOutput WriteConsoleOutputW
766#define FillConsoleOutputCharacter FillConsoleOutputCharacterW
767#define WriteConsoleOutputCharacter WriteConsoleOutputCharacterW
769#define AddConsoleAlias AddConsoleAliasA
770#define GetConsoleAlias GetConsoleAliasA
771#define GetConsoleAliases GetConsoleAliasesA
772#define GetConsoleAliasesLength GetConsoleAliasesLengthA
773#define GetConsoleAliasExes GetConsoleAliasExesA
774#define GetConsoleAliasExesLength GetConsoleAliasExesLengthA
775#define GetConsoleTitle GetConsoleTitleA
776#define PeekConsoleInput PeekConsoleInputA
777#define ReadConsole ReadConsoleA
778#define ReadConsoleInput ReadConsoleInputA
779#define ReadConsoleInputEx ReadConsoleInputExA
780#define ReadConsoleOutput ReadConsoleOutputA
781#define ReadConsoleOutputCharacter ReadConsoleOutputCharacterA
782#define ScrollConsoleScreenBuffer ScrollConsoleScreenBufferA
783#define SetConsoleTitle SetConsoleTitleA
784#define WriteConsole WriteConsoleA
785#define WriteConsoleInput WriteConsoleInputA
786#define WriteConsoleInputVDM WriteConsoleInputVDMA
787#define WriteConsoleOutput WriteConsoleOutputA
788#define FillConsoleOutputCharacter FillConsoleOutputCharacterA
789#define WriteConsoleOutputCharacter WriteConsoleOutputCharacterA
static TAGREF LPCWSTR LPDWORD LPVOID lpBuffer
static WCHAR ExeNameBuffer[EXENAME_LENGTH]
BOOL WINAPI DECLSPEC_HOTPATCH ReadConsoleInputExW(IN HANDLE hConsoleInput, OUT PINPUT_RECORD lpBuffer, IN DWORD nLength, OUT LPDWORD lpNumberOfEventsRead, IN WORD wFlags)
BOOL WINAPI DECLSPEC_HOTPATCH ReadConsoleInputW(IN HANDLE hConsoleInput, OUT PINPUT_RECORD lpBuffer, IN DWORD nLength, OUT LPDWORD lpNumberOfEventsRead)
BOOL WINAPI DECLSPEC_HOTPATCH ReadConsoleInputExA(IN HANDLE hConsoleInput, OUT PINPUT_RECORD lpBuffer, IN DWORD nLength, OUT LPDWORD lpNumberOfEventsRead, IN WORD wFlags)
BOOL WINAPI DECLSPEC_HOTPATCH ReadConsoleW(IN HANDLE hConsoleInput, OUT LPVOID lpBuffer, IN DWORD nNumberOfCharsToRead, OUT LPDWORD lpNumberOfCharsRead, IN PCONSOLE_READCONSOLE_CONTROL pInputControl OPTIONAL)
BOOL WINAPI DECLSPEC_HOTPATCH ReadConsoleInputA(IN HANDLE hConsoleInput, OUT PINPUT_RECORD lpBuffer, IN DWORD nLength, OUT LPDWORD lpNumberOfEventsRead)
BOOL WINAPI DECLSPEC_HOTPATCH PeekConsoleInputA(IN HANDLE hConsoleInput, OUT PINPUT_RECORD lpBuffer, IN DWORD nLength, OUT LPDWORD lpNumberOfEventsRead)
BOOL WINAPI DECLSPEC_HOTPATCH PeekConsoleInputW(IN HANDLE hConsoleInput, OUT PINPUT_RECORD lpBuffer, IN DWORD nLength, OUT LPDWORD lpNumberOfEventsRead)
BOOL WINAPI DECLSPEC_HOTPATCH ReadConsoleA(IN HANDLE hConsoleInput, OUT LPVOID lpBuffer, IN DWORD nNumberOfCharsToRead, OUT LPDWORD lpNumberOfCharsRead, IN PCONSOLE_READCONSOLE_CONTROL pInputControl OPTIONAL)
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
_In_ UINT _In_ UINT _In_ PNDIS_PACKET Source
#define _Deref_out_range_(l, h)
#define _Out_writes_bytes_to_(s, c)
#define _Out_writes_to_(s, c)
union _CHAR_INFO::@3284 Char
WCHAR FaceName[LF_FACESIZE]
LPBITMAPINFO lpBitMapInfo
UINT NumberOfHistoryBuffers
COORD dwMaximumWindowSize
BOOL bFullscreenSupported
COORD dwMaximumWindowSize
union _KEY_EVENT_RECORD::@3285 uChar
#define FIELD_OFFSET(t, f)
*nSize LPSTR _Inout_ LPDWORD nSize
BOOL WINAPI WriteConsoleOutputAttribute(_In_ HANDLE hConsoleOutput, _In_reads_(nLength) CONST WORD *lpAttribute, _In_ DWORD nLength, _In_ COORD dwWriteCoord, _Out_ LPDWORD lpNumberOfAttrsWritten)
struct _KEY_EVENT_RECORD * PKEY_EVENT_RECORD
struct _CONSOLE_FONT_INFOEX * PCONSOLE_FONT_INFOEX
UINT WINAPI GetConsoleCP(VOID)
BOOL WINAPI ReadConsoleOutputAttribute(_In_ HANDLE hConsoleOutput, _Out_writes_(nLength) LPWORD lpAttribute, _In_ DWORD nLength, _In_ COORD dwReadCoord, _Out_ LPDWORD lpNumberOfAttrsRead)
BOOL WINAPI SetConsoleCursorInfo(_In_ HANDLE, _In_ const CONSOLE_CURSOR_INFO *)
BOOL WINAPI ReadConsoleOutputCharacterW(_In_ HANDLE hConsoleOutput, _Out_writes_(nLength) LPWSTR lpCharacter, _In_ DWORD nLength, _In_ COORD dwReadCoord, _Out_ LPDWORD lpNumberOfCharsRead)
COORD WINAPI GetConsoleFontSize(_In_ HANDLE hConsoleOutput, _In_ DWORD nFont)
BOOL WINAPI SetConsoleTextAttribute(_In_ HANDLE, _In_ WORD)
BOOL WINAPI SetConsoleMode(_In_ HANDLE, _In_ DWORD)
struct _SMALL_RECT SMALL_RECT
struct _CHAR_INFO CHAR_INFO
BOOL WINAPI WriteConsoleW(_In_ HANDLE hConsoleOutput, _In_reads_(nNumberOfCharsToWrite) CONST VOID *lpBuffer, _In_ DWORD nNumberOfCharsToWrite, _Out_opt_ LPDWORD lpNumberOfCharsWritten, _Reserved_ LPVOID lpReserved)
BOOL WINAPI SetConsoleTitleW(_In_ LPCWSTR)
DWORD WINAPI GetConsoleAliasExesLengthW(VOID)
BOOL WINAPI WriteConsoleInputVDMW(_In_ HANDLE hConsoleInput, _In_reads_(nLength) CONST INPUT_RECORD *lpBuffer, _In_ DWORD nLength, _Out_ LPDWORD lpNumberOfEventsWritten)
BOOL WINAPI WriteConsoleA(_In_ HANDLE hConsoleOutput, _In_reads_(nNumberOfCharsToWrite) CONST VOID *lpBuffer, _In_ DWORD nNumberOfCharsToWrite, _Out_opt_ LPDWORD lpNumberOfCharsWritten, _Reserved_ LPVOID lpReserved)
struct _CONSOLE_SELECTION_INFO * PCONSOLE_SELECTION_INFO
_In_ DWORD _Out_ LPDWORD lpNumberOfEventsRead
BOOL WINAPI AddConsoleAliasA(_In_ LPCSTR, _In_ LPCSTR, _In_ LPCSTR)
BOOL WINAPI SetConsoleTitleA(_In_ LPCSTR)
BOOL WINAPI InvalidateConsoleDIBits(_In_ HANDLE, _In_ PSMALL_RECT)
DWORD WINAPI GetConsoleAliasesW(_Out_writes_(AliasBufferLength) LPWSTR AliasBuffer, _In_ DWORD AliasBufferLength, _In_ LPWSTR ExeName)
_In_ DWORD nNumberOfCharsToRead
BOOL WINAPI GetConsoleMode(_In_ HANDLE, _Out_ PDWORD)
COORD WINAPI GetLargestConsoleWindowSize(_In_ HANDLE)
BOOL WINAPI GetNumberOfConsoleMouseButtons(_Out_ PDWORD)
BOOL WINAPI FillConsoleOutputCharacterA(_In_ HANDLE, _In_ CHAR, _In_ DWORD, _In_ COORD, _Out_ PDWORD)
BOOL WINAPI WriteConsoleInputA(_In_ HANDLE hConsoleInput, _In_reads_(nLength) CONST INPUT_RECORD *lpBuffer, _In_ DWORD nLength, _Out_ LPDWORD lpNumberOfEventsWritten)
struct _CHAR_INFO * PCHAR_INFO
BOOL WINAPI FlushConsoleInputBuffer(_In_ HANDLE)
DWORD WINAPI GetConsoleAliasExesLengthA(VOID)
struct _CONSOLE_HISTORY_INFO CONSOLE_HISTORY_INFO
struct _CONSOLE_FONT_INFOEX CONSOLE_FONT_INFOEX
BOOL WINAPI WriteConsoleOutputA(_In_ HANDLE hConsoleOutput, _In_reads_(dwBufferSize.X *dwBufferSize.Y) CONST CHAR_INFO *lpBuffer, _In_ COORD dwBufferSize, _In_ COORD dwBufferCoord, _Inout_ PSMALL_RECT lpWriteRegion)
DWORD WINAPI GetConsoleAliasW(_In_ LPWSTR Source, _Out_writes_(TargetBufferLength) LPWSTR TargetBuffer, _In_ DWORD TargetBufferLength, _In_ LPWSTR ExeName)
BOOL WINAPI ReadConsoleOutputA(_In_ HANDLE hConsoleOutput, _Out_writes_(dwBufferSize.X *dwBufferSize.Y) PCHAR_INFO lpBuffer, _In_ COORD dwBufferSize, _In_ COORD dwBufferCoord, _Inout_ PSMALL_RECT lpReadRegion)
struct _SMALL_RECT * PSMALL_RECT
struct _CONSOLE_SCREEN_BUFFER_INFO CONSOLE_SCREEN_BUFFER_INFO
HMENU WINAPI ConsoleMenuControl(_In_ HANDLE, _In_ DWORD, _In_ DWORD)
BOOL(CALLBACK * PHANDLER_ROUTINE)(_In_ DWORD)
struct _CONSOLE_SCREEN_BUFFER_INFOEX CONSOLE_SCREEN_BUFFER_INFOEX
struct _INPUT_RECORD INPUT_RECORD
BOOL WINAPI SetConsoleCursorPosition(_In_ HANDLE, _In_ COORD)
BOOL WINAPI FillConsoleOutputCharacterW(_In_ HANDLE, _In_ WCHAR, _In_ DWORD, _In_ COORD, _Out_ PDWORD)
BOOL WINAPI GetConsoleCursorInfo(_In_ HANDLE, _Out_ PCONSOLE_CURSOR_INFO)
BOOL WINAPI VerifyConsoleIoHandle(_In_ HANDLE)
_In_ DWORD _Out_ _In_ WORD wFlags
BOOL WINAPI ReadConsoleOutputW(_In_ HANDLE hConsoleOutput, _Out_writes_(dwBufferSize.X *dwBufferSize.Y) PCHAR_INFO lpBuffer, _In_ COORD dwBufferSize, _In_ COORD dwBufferCoord, _Inout_ PSMALL_RECT lpReadRegion)
BOOL WINAPI GetConsoleScreenBufferInfo(_In_ HANDLE, _Out_ PCONSOLE_SCREEN_BUFFER_INFO)
BOOL WINAPI SetConsoleIcon(_In_ HICON)
struct _MENU_EVENT_RECORD MENU_EVENT_RECORD
struct _CONSOLE_HISTORY_INFO * PCONSOLE_HISTORY_INFO
BOOL WINAPI RegisterConsoleVDM(_In_ DWORD, _In_ HANDLE, _In_ HANDLE, _In_ HANDLE, _In_ DWORD, _Out_ LPDWORD, _Out_ PVOID *, _In_ PVOID, _In_ DWORD, _In_ COORD, _Out_ PVOID *)
BOOL WINAPI SetConsoleWindowInfo(_In_ HANDLE, _In_ BOOL, _In_ const SMALL_RECT *)
BOOL WINAPI CloseConsoleHandle(_In_ HANDLE)
BOOL WINAPI SetConsoleMenuClose(_In_ BOOL)
BOOL WINAPI WriteConsoleInputVDMA(_In_ HANDLE hConsoleInput, _In_reads_(nLength) CONST INPUT_RECORD *lpBuffer, _In_ DWORD nLength, _Out_ LPDWORD lpNumberOfEventsWritten)
struct _CONSOLE_FONT_INFO CONSOLE_FONT_INFO
BOOL WINAPI SetConsoleCursor(_In_ HANDLE, _In_ HCURSOR)
BOOL WINAPI AllocConsole(VOID)
UINT WINAPI GetConsoleOutputCP(VOID)
BOOL WINAPI FreeConsole(VOID)
BOOL WINAPI WriteConsoleOutputW(_In_ HANDLE hConsoleOutput, _In_reads_(dwBufferSize.X *dwBufferSize.Y) CONST CHAR_INFO *lpBuffer, _In_ COORD dwBufferSize, _In_ COORD dwBufferCoord, _Inout_ PSMALL_RECT lpWriteRegion)
BOOL WINAPI WriteConsoleOutputCharacterW(_In_ HANDLE hConsoleOutput, _In_reads_(nLength) LPCWSTR lpCharacter, _In_ DWORD nLength, _In_ COORD dwWriteCoord, _Out_ LPDWORD lpNumberOfCharsWritten)
struct _CONSOLE_FONT_INFO * PCONSOLE_FONT_INFO
DWORD WINAPI GetConsoleAliasesA(_Out_writes_(AliasBufferLength) LPSTR AliasBuffer, _In_ DWORD AliasBufferLength, _In_ LPSTR ExeName)
DWORD WINAPI GetConsoleAliasA(_In_ LPSTR Source, _Out_writes_(TargetBufferLength) LPSTR TargetBuffer, _In_ DWORD TargetBufferLength, _In_ LPSTR ExeName)
BOOL WINAPI SetConsoleDisplayMode(_In_ HANDLE hConsoleOutput, _In_ DWORD dwFlags, _Out_opt_ PCOORD lpNewScreenBufferDimensions)
struct _CONSOLE_READCONSOLE_CONTROL CONSOLE_READCONSOLE_CONTROL
INT WINAPI ShowConsoleCursor(_In_ HANDLE, _In_ BOOL)
struct _CONSOLE_CURSOR_INFO * PCONSOLE_CURSOR_INFO
BOOL WINAPI WriteConsoleOutputCharacterA(_In_ HANDLE hConsoleOutput, _In_reads_(nLength) LPCSTR lpCharacter, _In_ DWORD nLength, _In_ COORD dwWriteCoord, _Out_ LPDWORD lpNumberOfCharsWritten)
BOOL WINAPI FillConsoleOutputAttribute(_In_ HANDLE, _In_ WORD, _In_ DWORD, _In_ COORD, _Out_ PDWORD)
DWORD WINAPI GetConsoleAliasExesW(_Out_writes_(ExeNameBufferLength) LPWSTR ExeNameBuffer, _In_ DWORD ExeNameBufferLength)
struct _CONSOLE_SCREEN_BUFFER_INFO * PCONSOLE_SCREEN_BUFFER_INFO
struct _INPUT_RECORD * PINPUT_RECORD
BOOL WINAPI SetConsolePalette(_In_ HANDLE, _In_ HPALETTE, _In_ UINT)
struct _KEY_EVENT_RECORD KEY_EVENT_RECORD
HANDLE WINAPI CreateConsoleScreenBuffer(_In_ DWORD, _In_ DWORD, _In_opt_ CONST SECURITY_ATTRIBUTES *, _In_ DWORD, _Reserved_ LPVOID)
BOOL WINAPI GetNumberOfConsoleInputEvents(_In_ HANDLE, _Out_ PDWORD)
BOOL WINAPI SetConsoleCP(_In_ UINT)
BOOL WINAPI GetConsoleDisplayMode(_Out_ LPDWORD lpModeFlags)
struct _FOCUS_EVENT_RECORD FOCUS_EVENT_RECORD
struct _WINDOW_BUFFER_SIZE_RECORD * PWINDOW_BUFFER_SIZE_RECORD
HWND WINAPI GetConsoleWindow(VOID)
BOOL WINAPI WriteConsoleInputW(_In_ HANDLE hConsoleInput, _In_reads_(nLength) CONST INPUT_RECORD *lpBuffer, _In_ DWORD nLength, _Out_ LPDWORD lpNumberOfEventsWritten)
BOOL WINAPI AttachConsole(_In_ DWORD)
struct _CONSOLE_CURSOR_INFO CONSOLE_CURSOR_INFO
DWORD WINAPI GetConsoleTitleA(_Out_writes_(nSize) LPSTR lpConsoleTitle, _In_ DWORD nSize)
DWORD WINAPI GetConsoleAliasesLengthA(_In_ LPSTR ExeName)
BOOL WINAPI SetConsoleOutputCP(_In_ UINT)
BOOL WINAPI AddConsoleAliasW(_In_ LPCWSTR, _In_ LPCWSTR, _In_ LPCWSTR)
BOOL WINAPI ScrollConsoleScreenBufferA(_In_ HANDLE, _In_ const SMALL_RECT *, _In_opt_ const SMALL_RECT *, _In_ COORD, _In_ const CHAR_INFO *)
BOOL WINAPI SetConsoleScreenBufferSize(_In_ HANDLE, _In_ COORD)
HANDLE WINAPI GetConsoleInputWaitHandle(VOID)
struct _CONSOLE_GRAPHICS_BUFFER_INFO * PCONSOLE_GRAPHICS_BUFFER_INFO
struct _MOUSE_EVENT_RECORD * PMOUSE_EVENT_RECORD
BOOL WINAPI ReadConsoleOutputCharacterA(_In_ HANDLE hConsoleOutput, _Out_writes_(nLength) LPSTR lpCharacter, _In_ DWORD nLength, _In_ COORD dwReadCoord, _Out_ LPDWORD lpNumberOfCharsRead)
_In_ DWORD _Out_ _In_opt_ PCONSOLE_READCONSOLE_CONTROL pInputControl
struct _CONSOLE_SCREEN_BUFFER_INFOEX * PCONSOLE_SCREEN_BUFFER_INFOEX
BOOL WINAPI GetCurrentConsoleFont(_In_ HANDLE hConsoleOutput, _In_ BOOL bMaximumWindow, _Out_ PCONSOLE_FONT_INFO lpConsoleCurrentFont)
struct _WINDOW_BUFFER_SIZE_RECORD WINDOW_BUFFER_SIZE_RECORD
DWORD WINAPI GetConsoleTitleW(_Out_writes_(nSize) LPWSTR lpConsoleTitle, _In_ DWORD nSize)
struct _MOUSE_EVENT_RECORD MOUSE_EVENT_RECORD
struct _FOCUS_EVENT_RECORD * PFOCUS_EVENT_RECORD
DWORD WINAPI GetConsoleAliasesLengthW(_In_ LPWSTR ExeName)
BOOL WINAPI SetConsoleCtrlHandler(_In_opt_ PHANDLER_ROUTINE, _In_ BOOL)
struct _MENU_EVENT_RECORD * PMENU_EVENT_RECORD
BOOL WINAPI GenerateConsoleCtrlEvent(_In_ DWORD, _In_ DWORD)
struct _CONSOLE_SELECTION_INFO CONSOLE_SELECTION_INFO
BOOL WINAPI ScrollConsoleScreenBufferW(_In_ HANDLE, _In_ const SMALL_RECT *, _In_opt_ const SMALL_RECT *, _In_ COORD, _In_ const CHAR_INFO *)
struct _CONSOLE_GRAPHICS_BUFFER_INFO CONSOLE_GRAPHICS_BUFFER_INFO
DWORD WINAPI GetConsoleAliasExesA(_Out_writes_(ExeNameBufferLength) LPSTR ExeNameBuffer, _In_ DWORD ExeNameBufferLength)
struct _CONSOLE_READCONSOLE_CONTROL * PCONSOLE_READCONSOLE_CONTROL
BOOL WINAPI SetConsoleActiveScreenBuffer(_In_ HANDLE)
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
ActualNumberDriverObjects * sizeof(PDRIVER_OBJECT)) PDRIVER_OBJECT *DriverObjectList