ReactOS  0.4.15-dev-1207-g698a8e6
wincon.h
Go to the documentation of this file.
1 #ifndef _WINCON_H
2 #define _WINCON_H
3 
4 #ifdef __cplusplus
5 extern "C" {
6 #endif
7 
8 #if (_WIN32_WINNT >= _WIN32_WINNT_VISTA) && !defined(NOGDI)
9 # include "wingdi.h"
10 #endif
11 
12 #ifdef _MSC_VER
13 #pragma warning(push)
14 #pragma warning(disable:4820)
15 #endif
16 
17 /*
18  * Special PID for parent process for AttachConsole API
19  */
20 #if (_WIN32_WINNT >= _WIN32_WINNT_WINXP)
21 #define ATTACH_PARENT_PROCESS ((DWORD)-1)
22 #endif
23 
24 /*
25  * Console display modes
26  */
27 // These codes are answered by GetConsoleDisplayMode
28 #define CONSOLE_WINDOWED 0
29 #define CONSOLE_FULLSCREEN 1
30 #define CONSOLE_FULLSCREEN_HARDWARE 2
31 
32 // These codes should be given to SetConsoleDisplayMode
33 #define CONSOLE_FULLSCREEN_MODE 1
34 #define CONSOLE_WINDOWED_MODE 2
35 
36 /*
37  * Color attributes for text and screen background
38  */
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
47 
48 #define COMMON_LVB_LEADING_BYTE 0x0100 /* DBCS Leading Byte */
49 #define COMMON_LVB_TRAILING_BYTE 0x0200 /* DBCS Trailing Byte */
50 #define COMMON_LVB_GRID_HORIZONTAL 0x0400 /* Grid attribute: Top Horizontal */
51 #define COMMON_LVB_GRID_LVERTICAL 0x0800 /* Grid attribute: Left Vertical */
52 #define COMMON_LVB_GRID_RVERTICAL 0x1000 /* Grid attribute: Right Vertical */
53 #define COMMON_LVB_REVERSE_VIDEO 0x4000 /* Reverse fore/back ground attribute */
54 #define COMMON_LVB_UNDERSCORE 0x8000 /* Underscore */
55 
56 #define COMMON_LVB_SBCSDBCS \
57  (COMMON_LVB_LEADING_BYTE | COMMON_LVB_TRAILING_BYTE) /* == 0x0300 */
58 
59 /*
60  * Screen buffer types
61  */
62 #define CONSOLE_TEXTMODE_BUFFER 1
63 #define CONSOLE_GRAPHICS_BUFFER 2 /* Undocumented, see http://blog.airesoft.co.uk/2012/10/things-ms-can-do-that-they-dont-tell-you-about-console-graphics/ */
64 
65 /*
66  * Control handler codes
67  */
68 #define CTRL_C_EVENT 0
69 #define CTRL_BREAK_EVENT 1
70 #define CTRL_CLOSE_EVENT 2
71 #define CTRL_LAST_CLOSE_EVENT 3 /* Undocumented */
72 #define CTRL_LOGOFF_EVENT 5
73 #define CTRL_SHUTDOWN_EVENT 6
74 
75 /*
76  * Input mode flags
77  */
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
88 #endif
89 #if (_WIN32_WINNT >= _WIN32_WINNT_WIN10)
90 #define ENABLE_VIRTUAL_TERMINAL_INPUT 0x0200
91 #endif
92 
93 /*
94  * Output mode flags
95  */
96 #define ENABLE_PROCESSED_OUTPUT 0x0001
97 #define ENABLE_WRAP_AT_EOL_OUTPUT 0x0002
98 
99 /*
100  * Console selection flags
101  */
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
107 
108 /*
109  * History information and mode flags
110  */
111 #if (_WIN32_WINNT >= _WIN32_WINNT_VISTA)
112 // For Get/SetConsoleHistoryInfo
113 #define HISTORY_NO_DUP_FLAG 0x0001
114 // For SetConsoleCommandHistoryMode
115 #define CONSOLE_OVERSTRIKE 0x0001
116 #endif
117 
118 
119 /*
120  * Read input flags
121  */
122 #define CONSOLE_READ_KEEPEVENT 0x0001
123 #define CONSOLE_READ_CONTINUE 0x0002
124 
125 /*
126  * Event types
127  */
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
133 
134 /*
135  * ControlKeyState flags
136  */
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
146 
147 // NLS Japanese flags
148 #define NLS_DBCSCHAR 0x00010000 /* SBCS/DBCS mode */
149 #define NLS_ALPHANUMERIC 0x00000000 /* Alphanumeric mode */
150 #define NLS_KATAKANA 0x00020000 /* Katakana mode */
151 #define NLS_HIRAGANA 0x00040000 /* Hiragana mode */
152 #define NLS_ROMAN 0x00400000 /* Roman/Noroman mode */
153 #define NLS_IME_CONVERSION 0x00800000 /* IME conversion */
154 #define NLS_IME_DISABLE 0x20000000 /* IME enable/disable */
155 
156 /*
157  * ButtonState flags
158  */
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
164 
165 /*
166  * Mouse event flags
167  */
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
173 #endif
174 
181 
182 typedef struct _CHAR_INFO {
183  union {
186  } Char;
189 
190 typedef struct _SMALL_RECT {
196 
197 typedef struct _CONSOLE_CURSOR_INFO {
201 
202 typedef struct _COORD {
205 } COORD, *PCOORD;
206 
207 typedef struct _CONSOLE_SELECTION_INFO {
212 
213 typedef struct _CONSOLE_FONT_INFO {
217 
225 
226 /* Undocumented, see http://blog.airesoft.co.uk/2012/10/things-ms-can-do-that-they-dont-tell-you-about-console-graphics/ */
227 #if defined(_WINGDI_) && !defined(NOGDI)
231  DWORD dwUsage; // DIB_PAL_COLORS or DIB_RGB_COLORS
235 #endif
236 
238 
239 typedef struct _KEY_EVENT_RECORD {
244  union {
247  } uChar;
249 }
250 #ifdef __GNUC__
251 /* gcc's alignment is not what win32 expects */
252 PACKED
253 #endif
255 
256 typedef struct _MOUSE_EVENT_RECORD {
262 
266 
267 typedef struct _MENU_EVENT_RECORD {
270 
271 typedef struct _FOCUS_EVENT_RECORD {
274 
275 typedef struct _INPUT_RECORD {
277  union {
283  } Event;
285 
286 #if (_WIN32_WINNT >= _WIN32_WINNT_VISTA)
287 typedef struct _CONSOLE_HISTORY_INFO {
293 
305 
306 #ifndef NOGDI
307 typedef struct _CONSOLE_FONT_INFOEX {
315 #endif
316 #endif
317 
319 
320 #if (_WIN32_WINNT >= _WIN32_WINNT_WINXP)
322 
325 
326 DWORD
327 WINAPI
329  _In_ LPSTR Source,
330  _Out_writes_(TargetBufferLength) LPSTR TargetBuffer,
331  _In_ DWORD TargetBufferLength,
332  _In_ LPSTR ExeName);
333 
334 DWORD
335 WINAPI
338  _Out_writes_(TargetBufferLength) LPWSTR TargetBuffer,
339  _In_ DWORD TargetBufferLength,
340  _In_ LPWSTR ExeName);
341 
342 DWORD
343 WINAPI
345  _Out_writes_(AliasBufferLength) LPSTR AliasBuffer,
346  _In_ DWORD AliasBufferLength,
347  _In_ LPSTR ExeName);
348 
349 DWORD
350 WINAPI
352  _Out_writes_(AliasBufferLength) LPWSTR AliasBuffer,
353  _In_ DWORD AliasBufferLength,
354  _In_ LPWSTR ExeName);
355 
358 
359 DWORD
360 WINAPI
362  _Out_writes_(ExeNameBufferLength) LPSTR ExeNameBuffer,
363  _In_ DWORD ExeNameBufferLength);
364 
365 DWORD
366 WINAPI
368  _Out_writes_(ExeNameBufferLength) LPWSTR ExeNameBuffer,
369  _In_ DWORD ExeNameBufferLength);
370 
373 #endif
374 
375 HANDLE
376 WINAPI
378  _In_ DWORD,
379  _In_ DWORD,
381  _In_ DWORD,
383 
384 BOOL
385 WINAPI
387  _In_ HANDLE,
388  _In_ WORD,
389  _In_ DWORD,
390  _In_ COORD,
391  _Out_ PDWORD);
392 
393 BOOL
394 WINAPI
396  _In_ HANDLE,
397  _In_ CHAR,
398  _In_ DWORD,
399  _In_ COORD,
400  _Out_ PDWORD);
401 
402 BOOL
403 WINAPI
405  _In_ HANDLE,
406  _In_ WCHAR,
407  _In_ DWORD,
408  _In_ COORD,
409  _Out_ PDWORD);
410 
418 
419 BOOL
420 WINAPI
422  _In_ HANDLE,
424 
425 /* Undocumented, see http://blog.airesoft.co.uk/2012/10/things-ms-can-do-that-they-dont-tell-you-about-console-graphics/ */
427 
428 DWORD
429 WINAPI
431  _Out_writes_(nSize) LPSTR lpConsoleTitle,
432  _In_ DWORD nSize);
433 
434 DWORD
435 WINAPI
437  _Out_writes_(nSize) LPWSTR lpConsoleTitle,
438  _In_ DWORD nSize);
439 
440 COORD
441 WINAPI
443  _In_ HANDLE hConsoleOutput,
444  _In_ DWORD nFont);
445 
446 BOOL
447 WINAPI
449  _In_ HANDLE hConsoleOutput,
450  _In_ BOOL bMaximumWindow,
451  _Out_ PCONSOLE_FONT_INFO lpConsoleCurrentFont);
452 
453 #if (_WIN32_WINNT >= _WIN32_WINNT_WIN2K)
454 
457 
458 BOOL
459 WINAPI
461  _In_ HANDLE hConsoleOutput,
463  _Out_opt_ PCOORD lpNewScreenBufferDimensions);
464 
465 #endif
466 
470 
471 _Success_(return != 0)
472 BOOL
474  _In_ HANDLE hConsoleInput,
478 
479 _Success_(return != 0)
480 BOOL
481 WINAPI
483  _In_ HANDLE hConsoleInput,
487 
488 _Success_(return != 0)
489 BOOL
490 WINAPI
492  _In_ HANDLE hConsoleInput,
495  _Out_ _Deref_out_range_(<= , nNumberOfCharsToRead) LPDWORD lpNumberOfCharsRead,
497 
498 _Success_(return != 0)
499 BOOL
500 WINAPI
502  _In_ HANDLE hConsoleInput,
505  _Out_ _Deref_out_range_(<= , nNumberOfCharsToRead) LPDWORD lpNumberOfCharsRead,
507 
508 _Success_(return != 0)
509 BOOL
510 WINAPI
512  _In_ HANDLE hConsoleInput,
516 
517 _Success_(return != 0)
518 BOOL
519 WINAPI
521  _In_ HANDLE hConsoleInput,
525 
526 _Success_(return != 0)
527 BOOL
528 WINAPI
530  _In_ HANDLE hConsoleInput,
535 
536 _Success_(return != 0)
537 BOOL
538 WINAPI
540  _In_ HANDLE hConsoleInput,
544  _In_ WORD wFlags);
545 
546 BOOL
547 WINAPI
549  _In_ HANDLE hConsoleOutput,
550  _Out_writes_(nLength) LPWORD lpAttribute,
552  _In_ COORD dwReadCoord,
553  _Out_ LPDWORD lpNumberOfAttrsRead);
554 
555 BOOL
556 WINAPI
558  _In_ HANDLE hConsoleOutput,
559  _Out_writes_(nLength) LPSTR lpCharacter,
561  _In_ COORD dwReadCoord,
562  _Out_ LPDWORD lpNumberOfCharsRead);
563 
564 BOOL
565 WINAPI
567  _In_ HANDLE hConsoleOutput,
568  _Out_writes_(nLength) LPWSTR lpCharacter,
570  _In_ COORD dwReadCoord,
571  _Out_ LPDWORD lpNumberOfCharsRead);
572 
573 BOOL
574 WINAPI
576  _In_ HANDLE hConsoleOutput,
577  _Out_writes_(dwBufferSize.X * dwBufferSize.Y) PCHAR_INFO lpBuffer,
578  _In_ COORD dwBufferSize,
579  _In_ COORD dwBufferCoord,
580  _Inout_ PSMALL_RECT lpReadRegion);
581 
582 BOOL
583 WINAPI
585  _In_ HANDLE hConsoleOutput,
586  _Out_writes_(dwBufferSize.X * dwBufferSize.Y) PCHAR_INFO lpBuffer,
587  _In_ COORD dwBufferSize,
588  _In_ COORD dwBufferCoord,
589  _Inout_ PSMALL_RECT lpReadRegion);
590 
591 BOOL
592 WINAPI
594  _In_ HANDLE,
597  _In_ COORD,
598  _In_ const CHAR_INFO*);
599 
600 BOOL
601 WINAPI
603  _In_ HANDLE,
606  _In_ COORD,
607  _In_ const CHAR_INFO*);
608 
620 
621 BOOL
622 WINAPI
624  _In_ HANDLE,
625  _In_ BOOL,
627 
628 /* Undocumented, see http://undoc.airesoft.co.uk/kernel32.dll/ConsoleMenuControl.php */
630 /* Undocumented */
632 /* Undocumented, see http://undoc.airesoft.co.uk/kernel32.dll/SetConsoleCursor.php */
634 /* Undocumented, see http://undoc.airesoft.co.uk/kernel32.dll/ShowConsoleCursor.php */
636 /* Undocumented */
638 /* Undocumented, see http://comments.gmane.org/gmane.comp.lang.harbour.devel/27844 */
640 /* Undocumented */
642 /* Undocumented */
644 /* Undocumented */
646 /* Undocumented */
647 BOOL
648 WINAPI
651  _Out_ PVOID*);
652 
653 BOOL
654 WINAPI
656  _In_ HANDLE hConsoleOutput,
657  _In_reads_(nNumberOfCharsToWrite) CONST VOID *lpBuffer,
658  _In_ DWORD nNumberOfCharsToWrite,
659  _Out_opt_ LPDWORD lpNumberOfCharsWritten,
660  _Reserved_ LPVOID lpReserved);
661 
662 BOOL
663 WINAPI
665  _In_ HANDLE hConsoleOutput,
666  _In_reads_(nNumberOfCharsToWrite) CONST VOID *lpBuffer,
667  _In_ DWORD nNumberOfCharsToWrite,
668  _Out_opt_ LPDWORD lpNumberOfCharsWritten,
669  _Reserved_ LPVOID lpReserved);
670 
671 BOOL
672 WINAPI
674  _In_ HANDLE hConsoleInput,
677  _Out_ LPDWORD lpNumberOfEventsWritten);
678 
679 BOOL
680 WINAPI
682  _In_ HANDLE hConsoleInput,
685  _Out_ LPDWORD lpNumberOfEventsWritten);
686 
687 BOOL
688 WINAPI
690  _In_ HANDLE hConsoleInput,
693  _Out_ LPDWORD lpNumberOfEventsWritten);
694 
695 BOOL
696 WINAPI
698  _In_ HANDLE hConsoleInput,
701  _Out_ LPDWORD lpNumberOfEventsWritten);
702 
703 BOOL
704 WINAPI
706  _In_ HANDLE hConsoleOutput,
707  _In_reads_(dwBufferSize.X * dwBufferSize.Y) CONST CHAR_INFO *lpBuffer,
708  _In_ COORD dwBufferSize,
709  _In_ COORD dwBufferCoord,
710  _Inout_ PSMALL_RECT lpWriteRegion);
711 
712 BOOL
713 WINAPI
715  _In_ HANDLE hConsoleOutput,
716  _In_reads_(dwBufferSize.X * dwBufferSize.Y) CONST CHAR_INFO *lpBuffer,
717  _In_ COORD dwBufferSize,
718  _In_ COORD dwBufferCoord,
719  _Inout_ PSMALL_RECT lpWriteRegion);
720 
721 BOOL
722 WINAPI
724  _In_ HANDLE hConsoleOutput,
725  _In_reads_(nLength) CONST WORD *lpAttribute,
727  _In_ COORD dwWriteCoord,
728  _Out_ LPDWORD lpNumberOfAttrsWritten);
729 
730 BOOL
731 WINAPI
733  _In_ HANDLE hConsoleOutput,
734  _In_reads_(nLength) LPCSTR lpCharacter,
736  _In_ COORD dwWriteCoord,
737  _Out_ LPDWORD lpNumberOfCharsWritten);
738 
739 BOOL
740 WINAPI
742  _In_ HANDLE hConsoleOutput,
743  _In_reads_(nLength) LPCWSTR lpCharacter,
745  _In_ COORD dwWriteCoord,
746  _Out_ LPDWORD lpNumberOfCharsWritten);
747 
748 
749 #ifdef UNICODE
750 #define AddConsoleAlias AddConsoleAliasW
751 #define GetConsoleAlias GetConsoleAliasW
752 #define GetConsoleAliases GetConsoleAliasesW
753 #define GetConsoleAliasesLength GetConsoleAliasesLengthW
754 #define GetConsoleAliasExes GetConsoleAliasExesW
755 #define GetConsoleAliasExesLength GetConsoleAliasExesLengthW
756 #define GetConsoleTitle GetConsoleTitleW
757 #define PeekConsoleInput PeekConsoleInputW
758 #define ReadConsole ReadConsoleW
759 #define ReadConsoleInput ReadConsoleInputW
760 #define ReadConsoleInputEx ReadConsoleInputExW
761 #define ReadConsoleOutput ReadConsoleOutputW
762 #define ReadConsoleOutputCharacter ReadConsoleOutputCharacterW
763 #define ScrollConsoleScreenBuffer ScrollConsoleScreenBufferW
764 #define SetConsoleTitle SetConsoleTitleW
765 #define WriteConsole WriteConsoleW
766 #define WriteConsoleInput WriteConsoleInputW
767 #define WriteConsoleInputVDM WriteConsoleInputVDMW
768 #define WriteConsoleOutput WriteConsoleOutputW
769 #define FillConsoleOutputCharacter FillConsoleOutputCharacterW
770 #define WriteConsoleOutputCharacter WriteConsoleOutputCharacterW
771 #else
772 #define AddConsoleAlias AddConsoleAliasA
773 #define GetConsoleAlias GetConsoleAliasA
774 #define GetConsoleAliases GetConsoleAliasesA
775 #define GetConsoleAliasesLength GetConsoleAliasesLengthA
776 #define GetConsoleAliasExes GetConsoleAliasExesA
777 #define GetConsoleAliasExesLength GetConsoleAliasExesLengthA
778 #define GetConsoleTitle GetConsoleTitleA
779 #define PeekConsoleInput PeekConsoleInputA
780 #define ReadConsole ReadConsoleA
781 #define ReadConsoleInput ReadConsoleInputA
782 #define ReadConsoleInputEx ReadConsoleInputExA
783 #define ReadConsoleOutput ReadConsoleOutputA
784 #define ReadConsoleOutputCharacter ReadConsoleOutputCharacterA
785 #define ScrollConsoleScreenBuffer ScrollConsoleScreenBufferA
786 #define SetConsoleTitle SetConsoleTitleA
787 #define WriteConsole WriteConsoleA
788 #define WriteConsoleInput WriteConsoleInputA
789 #define WriteConsoleInputVDM WriteConsoleInputVDMA
790 #define WriteConsoleOutput WriteConsoleOutputA
791 #define FillConsoleOutputCharacter FillConsoleOutputCharacterA
792 #define WriteConsoleOutputCharacter WriteConsoleOutputCharacterA
793 #endif
794 
795 #ifdef _MSC_VER
796 #pragma warning(pop)
797 #endif
798 
799 #ifdef __cplusplus
800 }
801 #endif
802 
803 #endif /* _WINCON_H */
BOOL WINAPI GetNumberOfConsoleMouseButtons(_Out_ PDWORD)
BOOL WINAPI SetConsoleScreenBufferSize(_In_ HANDLE, _In_ COORD)
struct _WINDOW_BUFFER_SIZE_RECORD WINDOW_BUFFER_SIZE_RECORD
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)
struct _CONSOLE_CURSOR_INFO * PCONSOLE_CURSOR_INFO
return
Definition: dirsup.c:529
struct _KEY_EVENT_RECORD KEY_EVENT_RECORD
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 ScrollConsoleScreenBufferA(_In_ HANDLE, _In_ const SMALL_RECT *, _In_opt_ const SMALL_RECT *, _In_ COORD, _In_ const CHAR_INFO *)
static HICON
Definition: imagelist.c:84
BOOL WINAPI DECLSPEC_HOTPATCH ReadConsoleInputExW(IN HANDLE hConsoleInput, OUT PINPUT_RECORD lpBuffer, IN DWORD nLength, OUT LPDWORD lpNumberOfEventsRead, IN WORD wFlags)
Definition: readwrite.c:1296
#define LF_FACESIZE
Definition: dimm.idl:39
WCHAR UnicodeChar
Definition: wincon.h:245
DWORD dwEventFlags
Definition: wincon.h:260
WORD wVirtualScanCode
Definition: wincon.h:243
CHAR AsciiChar
Definition: wincon.h:185
static WCHAR ExeNameBuffer[EXENAME_LENGTH]
Definition: console.c:43
BOOL WINAPI SetConsoleCP(_In_ UINT)
#define Y(I)
struct _SMALL_RECT * PSMALL_RECT
ActualNumberDriverObjects * sizeof(PDRIVER_OBJECT)) PDRIVER_OBJECT *DriverObjectList
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185
_In_ DWORD _Out_ LPDWORD lpNumberOfEventsRead
Definition: wincon.h:476
struct _CONSOLE_SCREEN_BUFFER_INFO * PCONSOLE_SCREEN_BUFFER_INFO
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)
struct _CHAR_INFO * PCHAR_INFO
BOOL WINAPI WriteConsoleInputVDMW(_In_ HANDLE hConsoleInput, _In_reads_(nLength) CONST INPUT_RECORD *lpBuffer, _In_ DWORD nLength, _Out_ LPDWORD lpNumberOfEventsWritten)
BOOL WINAPI SetConsoleMode(_In_ HANDLE, _In_ DWORD)
WCHAR UnicodeChar
Definition: wincon.h:184
char CHAR
Definition: xmlstorage.h:175
*nSize LPSTR _Inout_ LPDWORD nSize
Definition: winbase.h:2037
HMENU WINAPI ConsoleMenuControl(_In_ HANDLE, _In_ DWORD, _In_ DWORD)
_Success_(return !=0) BOOL WINAPI PeekConsoleInputA(_In_ HANDLE hConsoleInput
Definition: fsctrl.c:3139
#define CALLBACK
Definition: compat.h:35
_In_ DWORD nLength
Definition: wincon.h:476
BOOL WINAPI AllocConsole(VOID)
Definition: console.c:74
SHORT X
Definition: wincon.h:203
DWORD dwControlKeyState
Definition: wincon.h:248
WINDOW_BUFFER_SIZE_RECORD WindowBufferSizeEvent
Definition: wincon.h:280
COORD WINAPI GetConsoleFontSize(_In_ HANDLE hConsoleOutput, _In_ DWORD nFont)
struct _CONSOLE_GRAPHICS_BUFFER_INFO * PCONSOLE_GRAPHICS_BUFFER_INFO
struct _COORD * PCOORD
UINT NumberOfHistoryBuffers
Definition: wincon.h:290
struct _WINDOW_BUFFER_SIZE_RECORD * PWINDOW_BUFFER_SIZE_RECORD
struct _CONSOLE_HISTORY_INFO * PCONSOLE_HISTORY_INFO
struct _FOCUS_EVENT_RECORD FOCUS_EVENT_RECORD
BOOL WINAPI WriteConsoleInputW(_In_ HANDLE hConsoleInput, _In_reads_(nLength) CONST INPUT_RECORD *lpBuffer, _In_ DWORD nLength, _Out_ LPDWORD lpNumberOfEventsWritten)
HICON HCURSOR
Definition: windef.h:299
SMALL_RECT srSelection
Definition: wincon.h:210
BOOL WINAPI SetConsoleTitleW(_In_ LPCWSTR)
WCHAR FaceName[LF_FACESIZE]
Definition: wincon.h:313
char * LPSTR
Definition: xmlstorage.h:182
#define BOOL
Definition: nt_native.h:43
DWORD dwButtonState
Definition: wincon.h:258
#define DWORD
Definition: nt_native.h:44
int32_t INT
Definition: typedefs.h:58
COORD dwFontSize
Definition: wincon.h:215
#define _In_opt_
Definition: no_sal2.h:212
SHORT Right
Definition: wincon.h:193
WORD wVirtualKeyCode
Definition: wincon.h:242
struct _FOCUS_EVENT_RECORD * PFOCUS_EVENT_RECORD
BOOL WINAPI GetNumberOfConsoleInputEvents(_In_ HANDLE, _Out_ PDWORD)
SHORT Left
Definition: wincon.h:191
BOOL WINAPI AddConsoleAliasW(_In_ LPCWSTR, _In_ LPCWSTR, _In_ LPCWSTR)
BOOL WINAPI SetConsoleTitleA(_In_ LPCSTR)
DWORD WINAPI GetConsoleAliasExesA(_Out_writes_(ExeNameBufferLength) LPSTR ExeNameBuffer, _In_ DWORD ExeNameBufferLength)
struct _CONSOLE_READCONSOLE_CONTROL * PCONSOLE_READCONSOLE_CONTROL
WORD wRepeatCount
Definition: wincon.h:241
struct _KEY_EVENT_RECORD * PKEY_EVENT_RECORD
DWORD WINAPI GetConsoleAliasExesLengthA(VOID)
Definition: alias.c:599
unsigned int BOOL
Definition: ntddk_ex.h:94
SHORT Y
Definition: wincon.h:204
short SHORT
Definition: pedump.c:59
struct _INPUT_RECORD * PINPUT_RECORD
static TAGREF LPCWSTR LPDWORD LPVOID lpBuffer
Definition: db.cpp:173
DWORD WINAPI GetConsoleTitleA(_Out_writes_(nSize) LPSTR lpConsoleTitle, _In_ DWORD nSize)
COORD dwMousePosition
Definition: wincon.h:257
BOOL WINAPI SetConsoleIcon(_In_ HICON)
struct _CHAR_INFO CHAR_INFO
HANDLE WINAPI CreateConsoleScreenBuffer(_In_ DWORD, _In_ DWORD, _In_opt_ CONST SECURITY_ATTRIBUTES *, _In_ DWORD, _Reserved_ LPVOID)
#define _Out_
Definition: no_sal2.h:160
_In_ DWORD nNumberOfCharsToRead
Definition: wincon.h:494
const char * LPCSTR
Definition: xmlstorage.h:183
BOOL WINAPI DECLSPEC_HOTPATCH ReadConsoleInputA(IN HANDLE hConsoleInput, OUT PINPUT_RECORD lpBuffer, IN DWORD nLength, OUT LPDWORD lpNumberOfEventsRead)
Definition: readwrite.c:1276
BOOL WINAPI DECLSPEC_HOTPATCH ReadConsoleInputExA(IN HANDLE hConsoleInput, OUT PINPUT_RECORD lpBuffer, IN DWORD nLength, OUT LPDWORD lpNumberOfEventsRead, IN WORD wFlags)
Definition: readwrite.c:1317
BOOL WINAPI AddConsoleAliasA(_In_ LPCSTR, _In_ LPCSTR, _In_ LPCSTR)
BOOL WINAPI CloseConsoleHandle(_In_ HANDLE)
struct _MENU_EVENT_RECORD MENU_EVENT_RECORD
UINT WINAPI GetConsoleOutputCP(VOID)
Definition: console.c:2453
BOOL WINAPI SetConsoleTextAttribute(_In_ HANDLE, _In_ WORD)
DWORD WINAPI GetConsoleAliasExesLengthW(VOID)
Definition: alias.c:586
struct _CONSOLE_SELECTION_INFO CONSOLE_SELECTION_INFO
#define _Out_opt_
Definition: no_sal2.h:214
HANDLE WINAPI GetConsoleInputWaitHandle(VOID)
Definition: console.c:683
HWND WINAPI GetConsoleWindow(VOID)
Definition: console.c:2730
BOOL WINAPI DECLSPEC_HOTPATCH ReadConsoleW(IN HANDLE hConsoleInput, OUT LPVOID lpBuffer, IN DWORD nNumberOfCharsToRead, OUT LPDWORD lpNumberOfCharsRead, IN PCONSOLE_READCONSOLE_CONTROL pInputControl OPTIONAL)
Definition: readwrite.c:1174
union _CHAR_INFO::@3240 Char
BOOL WINAPI DECLSPEC_HOTPATCH PeekConsoleInputW(IN HANDLE hConsoleInput, OUT PINPUT_RECORD lpBuffer, IN DWORD nLength, OUT LPDWORD lpNumberOfEventsRead)
Definition: readwrite.c:1216
_In_ DWORD _Out_ _Deref_out_range_(<=, nNumberOfCharsToRead) LPDWORD lpNumberOfCharsRead
BOOL WINAPI FillConsoleOutputCharacterA(_In_ HANDLE, _In_ CHAR, _In_ DWORD, _In_ COORD, _Out_ PDWORD)
BOOL WINAPI WriteConsoleW(_In_ HANDLE hConsoleOutput, _In_reads_(nNumberOfCharsToWrite) CONST VOID *lpBuffer, _In_ DWORD nNumberOfCharsToWrite, _Out_opt_ LPDWORD lpNumberOfCharsWritten, _Reserved_ LPVOID lpReserved)
__wchar_t WCHAR
Definition: xmlstorage.h:180
DWORD COLORREF
Definition: windef.h:300
struct _SMALL_RECT SMALL_RECT
BOOL WINAPI SetConsoleCursorPosition(_In_ HANDLE, _In_ COORD)
struct _MOUSE_EVENT_RECORD * PMOUSE_EVENT_RECORD
_Out_writes_bytes_to_(nNumberOfCharsToRead *sizeof(CHAR), *lpNumberOfCharsRead *sizeof(CHAR)) LPVOID lpBuffer
WORD Attributes
Definition: wincon.h:187
#define WINAPI
Definition: msvc.h:6
KEY_EVENT_RECORD KeyEvent
Definition: wincon.h:278
unsigned short WORD
Definition: ntddk_ex.h:93
unsigned long DWORD
Definition: ntddk_ex.h:95
BOOL WINAPI DECLSPEC_HOTPATCH ReadConsoleA(IN HANDLE hConsoleInput, OUT LPVOID lpBuffer, IN DWORD nNumberOfCharsToRead, OUT LPDWORD lpNumberOfCharsRead, IN PCONSOLE_READCONSOLE_CONTROL pInputControl OPTIONAL)
Definition: readwrite.c:1195
#define _Inout_
Definition: no_sal2.h:162
BOOL WINAPI FillConsoleOutputCharacterW(_In_ HANDLE, _In_ WCHAR, _In_ DWORD, _In_ COORD, _Out_ PDWORD)
BOOL WINAPI SetConsoleWindowInfo(_In_ HANDLE, _In_ BOOL, _In_ const SMALL_RECT *)
struct _CONSOLE_FONT_INFOEX CONSOLE_FONT_INFOEX
BOOL WINAPI WriteConsoleInputVDMA(_In_ HANDLE hConsoleInput, _In_reads_(nLength) CONST INPUT_RECORD *lpBuffer, _In_ DWORD nLength, _Out_ LPDWORD lpNumberOfEventsWritten)
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 *)
FOCUS_EVENT_RECORD FocusEvent
Definition: wincon.h:282
BOOL WINAPI SetConsoleCursor(_In_ HANDLE, _In_ HCURSOR)
BOOL WINAPI SetConsoleDisplayMode(_In_ HANDLE hConsoleOutput, _In_ DWORD dwFlags, _Out_opt_ PCOORD lpNewScreenBufferDimensions)
struct _COORD COORD
LPBITMAPINFO lpBitMapInfo
Definition: wincon.h:230
struct _CONSOLE_FONT_INFO CONSOLE_FONT_INFO
union _KEY_EVENT_RECORD::@3241 uChar
BOOL WINAPI AttachConsole(_In_ DWORD)
SHORT Bottom
Definition: wincon.h:194
struct _CONSOLE_FONT_INFOEX * PCONSOLE_FONT_INFOEX
#define _Reserved_
Definition: no_sal2.h:504
BOOL WINAPI GetConsoleMode(_In_ HANDLE, _Out_ PDWORD)
BOOL WINAPI SetConsoleOutputCP(_In_ UINT)
COORD WINAPI GetLargestConsoleWindowSize(_In_ HANDLE)
UINT WINAPI GetConsoleCP(VOID)
Definition: console.c:2393
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
Definition: wincrypt.h:1175
BOOL WINAPI WriteConsoleOutputCharacterA(_In_ HANDLE hConsoleOutput, _In_reads_(nLength) LPCSTR lpCharacter, _In_ DWORD nLength, _In_ COORD dwWriteCoord, _Out_ LPDWORD lpNumberOfCharsWritten)
struct _CONSOLE_HISTORY_INFO CONSOLE_HISTORY_INFO
DWORD WINAPI GetConsoleAliasesW(_Out_writes_(AliasBufferLength) LPWSTR AliasBuffer, _In_ DWORD AliasBufferLength, _In_ LPWSTR ExeName)
DWORD WINAPI GetConsoleAliasesLengthA(_In_ LPSTR ExeName)
Definition: bl.h:1338
struct _CONSOLE_READCONSOLE_CONTROL CONSOLE_READCONSOLE_CONTROL
BOOL WINAPI VerifyConsoleIoHandle(_In_ HANDLE)
DWORD WINAPI GetConsoleAliasesLengthW(_In_ LPWSTR ExeName)
BOOL WINAPI SetConsoleCtrlHandler(_In_opt_ PHANDLER_ROUTINE, _In_ BOOL)
BOOL WINAPI GenerateConsoleCtrlEvent(_In_ DWORD, _In_ DWORD)
SHORT Top
Definition: wincon.h:192
DWORD WINAPI GetConsoleTitleW(_Out_writes_(nSize) LPWSTR lpConsoleTitle, _In_ DWORD nSize)
uint16_t * LPWORD
Definition: typedefs.h:56
_In_ DWORD _Out_ _In_ WORD wFlags
Definition: wincon.h:534
#define _In_
Definition: no_sal2.h:158
_In_ DWORD _Out_ _In_opt_ PCONSOLE_READCONSOLE_CONTROL pInputControl
Definition: wincon.h:496
BOOL WINAPI DECLSPEC_HOTPATCH PeekConsoleInputA(IN HANDLE hConsoleInput, OUT PINPUT_RECORD lpBuffer, IN DWORD nLength, OUT LPDWORD lpNumberOfEventsRead)
Definition: readwrite.c:1236
BOOL WINAPI WriteConsoleOutputAttribute(_In_ HANDLE hConsoleOutput, _In_reads_(nLength) CONST WORD *lpAttribute, _In_ DWORD nLength, _In_ COORD dwWriteCoord, _Out_ LPDWORD lpNumberOfAttrsWritten)
BOOL WINAPI SetConsoleActiveScreenBuffer(_In_ HANDLE)
struct _CONSOLE_CURSOR_INFO CONSOLE_CURSOR_INFO
BOOL WINAPI ReadConsoleOutputCharacterA(_In_ HANDLE hConsoleOutput, _Out_writes_(nLength) LPSTR lpCharacter, _In_ DWORD nLength, _In_ COORD dwReadCoord, _Out_ LPDWORD lpNumberOfCharsRead)
_Out_writes_to_(nLength, *lpNumberOfEventsRead) PINPUT_RECORD lpBuffer
DWORD dwControlKeyState
Definition: wincon.h:259
BOOL WINAPI WriteConsoleOutputCharacterW(_In_ HANDLE hConsoleOutput, _In_reads_(nLength) LPCWSTR lpCharacter, _In_ DWORD nLength, _In_ COORD dwWriteCoord, _Out_ LPDWORD lpNumberOfCharsWritten)
BOOL WINAPI InvalidateConsoleDIBits(_In_ HANDLE, _In_ PSMALL_RECT)
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)
BOOL WINAPI WriteConsoleInputA(_In_ HANDLE hConsoleInput, _In_reads_(nLength) CONST INPUT_RECORD *lpBuffer, _In_ DWORD nLength, _Out_ LPDWORD lpNumberOfEventsWritten)
unsigned int UINT
Definition: ndis.h:50
BOOL WINAPI FlushConsoleInputBuffer(_In_ HANDLE)
INT WINAPI ShowConsoleCursor(_In_ HANDLE, _In_ BOOL)
BOOL WINAPI SetConsoleMenuClose(_In_ BOOL)
struct _CONSOLE_SCREEN_BUFFER_INFO CONSOLE_SCREEN_BUFFER_INFO
DWORD * PDWORD
Definition: pedump.c:68
struct _MOUSE_EVENT_RECORD MOUSE_EVENT_RECORD
WORD EventType
Definition: wincon.h:276
union _INPUT_RECORD::@3242 Event
MOUSE_EVENT_RECORD MouseEvent
Definition: wincon.h:279
BOOL WINAPI SetConsolePalette(_In_ HANDLE, _In_ HPALETTE, _In_ UINT)
BOOL WINAPI FillConsoleOutputAttribute(_In_ HANDLE, _In_ WORD, _In_ DWORD, _In_ COORD, _Out_ PDWORD)
BOOL WINAPI ReadConsoleOutputCharacterW(_In_ HANDLE hConsoleOutput, _Out_writes_(nLength) LPWSTR lpCharacter, _In_ DWORD nLength, _In_ COORD dwReadCoord, _Out_ LPDWORD lpNumberOfCharsRead)
struct _CONSOLE_SELECTION_INFO * PCONSOLE_SELECTION_INFO
uint32_t * LPDWORD
Definition: typedefs.h:59
unsigned int ULONG
Definition: retypes.h:1
BOOL WINAPI ScrollConsoleScreenBufferW(_In_ HANDLE, _In_ const SMALL_RECT *, _In_opt_ const SMALL_RECT *, _In_ COORD, _In_ const CHAR_INFO *)
BOOL WINAPI GetConsoleCursorInfo(_In_ HANDLE, _Out_ PCONSOLE_CURSOR_INFO)
#define const
Definition: zconf.h:230
_In_ UINT _In_ UINT _In_ PNDIS_PACKET Source
Definition: ndis.h:3167
BOOL WINAPI GetCurrentConsoleFont(_In_ HANDLE hConsoleOutput, _In_ BOOL bMaximumWindow, _Out_ PCONSOLE_FONT_INFO lpConsoleCurrentFont)
MENU_EVENT_RECORD MenuEvent
Definition: wincon.h:281
struct _CONSOLE_SCREEN_BUFFER_INFOEX CONSOLE_SCREEN_BUFFER_INFOEX
_Out_writes_(nLength) PINPUT_RECORD lpBuffer
DWORD WINAPI GetConsoleAliasA(_In_ LPSTR Source, _Out_writes_(TargetBufferLength) LPSTR TargetBuffer, _In_ DWORD TargetBufferLength, _In_ LPSTR ExeName)
WCHAR * LPWSTR
Definition: xmlstorage.h:184
#define _In_reads_(s)
Definition: no_sal2.h:168
BOOL(CALLBACK * PHANDLER_ROUTINE)(_In_ DWORD)
Definition: wincon.h:237
DWORD WINAPI GetConsoleAliasExesW(_Out_writes_(ExeNameBufferLength) LPWSTR ExeNameBuffer, _In_ DWORD ExeNameBufferLength)
struct _CONSOLE_FONT_INFO * PCONSOLE_FONT_INFO
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
Definition: ordinal.c:60
BOOL WINAPI SetConsoleCursorInfo(_In_ HANDLE, _In_ const CONSOLE_CURSOR_INFO *)
BOOL WINAPI GetConsoleScreenBufferInfo(_In_ HANDLE, _Out_ PCONSOLE_SCREEN_BUFFER_INFO)
struct _MENU_EVENT_RECORD * PMENU_EVENT_RECORD
BOOL WINAPI WriteConsoleA(_In_ HANDLE hConsoleOutput, _In_reads_(nNumberOfCharsToWrite) CONST VOID *lpBuffer, _In_ DWORD nNumberOfCharsToWrite, _Out_opt_ LPDWORD lpNumberOfCharsWritten, _Reserved_ LPVOID lpReserved)
BOOL WINAPI GetConsoleDisplayMode(_Out_ LPDWORD lpModeFlags)
#define CONST
Definition: pedump.c:81
BOOL WINAPI ReadConsoleOutputAttribute(_In_ HANDLE hConsoleOutput, _Out_writes_(nLength) LPWORD lpAttribute, _In_ DWORD nLength, _In_ COORD dwReadCoord, _Out_ LPDWORD lpNumberOfAttrsRead)
DWORD WINAPI GetConsoleAliasesA(_Out_writes_(AliasBufferLength) LPSTR AliasBuffer, _In_ DWORD AliasBufferLength, _In_ LPSTR ExeName)
struct _CONSOLE_SCREEN_BUFFER_INFOEX * PCONSOLE_SCREEN_BUFFER_INFOEX
BOOL WINAPI FreeConsole(VOID)
Definition: console.c:153
BOOL WINAPI DECLSPEC_HOTPATCH ReadConsoleInputW(IN HANDLE hConsoleInput, OUT PINPUT_RECORD lpBuffer, IN DWORD nLength, OUT LPDWORD lpNumberOfEventsRead)
Definition: readwrite.c:1256
struct _INPUT_RECORD INPUT_RECORD
struct _CONSOLE_GRAPHICS_BUFFER_INFO CONSOLE_GRAPHICS_BUFFER_INFO