The MinGW.OSDN Windows System Libraries. Formerly designated as "MinGW.org Windows System Libraries", this encapsulates the "mingwrt" C runtime library extensions, and the "w32api" 32-bit MS-Windows API libraries.
Please note that this project no longer owns the "MinGW.org" domain name; any software which may be distributed from that domain is NOT supported by this project.
Revision | 6479346df7674ef45103e37e152cb01671e4c0de (tree) |
---|---|
Time | 2018-10-30 08:36:08 |
Author | Keith Marshall <keith@user...> |
Commiter | Keith Marshall |
Clean up <wincon.h>; consolidate its version dependencies.
@@ -1,3 +1,40 @@ | ||
1 | +2018-10-29 Keith Marshall <keith@users.osdn.me> | |
2 | + | |
3 | + Clean up <wincon.h>; consolidate its version dependencies. | |
4 | + | |
5 | + * include/wincon.h: Tidy layout; assert copyright. | |
6 | + [_WIN32_WINNT]: Always compare it symbolically, with respect to... | |
7 | + [_WIN32_WINNT_WIN2K, _WIN32_WINNT_WINXP, _WIN32_WINNT_VISTA]: ...each | |
8 | + of these; group and consolidate respective version dependencies. | |
9 | + (FOREGROUND_BLUE, FOREGROUND_GREEN, FOREGROUND_RED) | |
10 | + (FOREGROUND_INTENSITY, BACKGROUND_BLUE, BACKGROUND_GREEN) | |
11 | + (BACKGROUND_RED, BACKGROUND_INTENSITY, COMMON_LVB_LEADING_BYTE) | |
12 | + (COMMON_LVB_TRAILING_BYTE, COMMON_LVB_GRID_HORIZONTAL) | |
13 | + (COMMON_LVB_GRID_LVERTICAL, COMMON_LVB_GRID_RVERTICAL) | |
14 | + (COMMON_LVB_REVERSE_VIDEO, COMMON_LVB_UNDERSCORE, CTRL_C_EVENT) | |
15 | + (CTRL_BREAK_EVENT, CTRL_CLOSE_EVENT, CTRL_LOGOFF_EVENT) | |
16 | + (CTRL_SHUTDOWN_EVENT, ENABLE_LINE_INPUT, ENABLE_ECHO_INPUT) | |
17 | + (ENABLE_PROCESSED_INPUT, ENABLE_WINDOW_INPUT, ENABLE_MOUSE_INPUT) | |
18 | + (ENABLE_INSERT_MODE, ENABLE_QUICK_EDIT_MODE, ENABLE_EXTENDED_FLAGS) | |
19 | + (ENABLE_AUTO_POSITION, ENABLE_VIRTUAL_TERMINAL_INPUT) | |
20 | + (ENABLE_PROCESSED_OUTPUT, ENABLE_WRAP_AT_EOL_OUTPUT) | |
21 | + (ENABLE_VIRTUAL_TERMINAL_PROCESSING, DISABLE_NEWLINE_AUTO_RETURN) | |
22 | + (ENABLE_LVB_GRID_WORLDWIDE, KEY_EVENT, MOUSE_EVENT) | |
23 | + (WINDOW_BUFFER_SIZE_EVENT, MENU_EVENT, FOCUS_EVENT, CAPSLOCK_ON) | |
24 | + (ENHANCED_KEY, RIGHT_ALT_PRESSED, LEFT_ALT_PRESSED) | |
25 | + (RIGHT_CTRL_PRESSED, LEFT_CTRL_PRESSED, SHIFT_PRESSED, NUMLOCK_ON) | |
26 | + (SCROLLLOCK_ON, FROM_LEFT_1ST_BUTTON_PRESSED) | |
27 | + (FROM_LEFT_2ND_BUTTON_PRESSED, FROM_LEFT_3RD_BUTTON_PRESSED) | |
28 | + (FROM_LEFT_4TH_BUTTON_PRESSED, RIGHTMOST_BUTTON_PRESSED, MOUSE_MOVED) | |
29 | + (DOUBLE_CLICK, MOUSE_WHEELED, MOUSE_HWHEELED, CONSOLE_FULLSCREEN) | |
30 | + (CONSOLE_FULLSCREEN_HARDWARE, CONSOLE_FULLSCREEN_MODE) | |
31 | + (CONSOLE_WINDOWED_MODE, CONSOLE_NO_SELECTION) | |
32 | + (CONSOLE_SELECTION_IN_PROGRESS, CONSOLE_SELECTION_NOT_EMPTY) | |
33 | + (CONSOLE_MOUSE_SELECTION, CONSOLE_MOUSE_DOWN, HISTORY_NO_DUP_FLAG): | |
34 | + Redefine, expressing all values in hexadecimal rather than decimal; | |
35 | + this is consistent with Microsoft documentation, and it is also more | |
36 | + logical, since all represent bit-flags, bit-fields, or bit-masks. | |
37 | + | |
1 | 38 | 2018-10-24 Keith Marshall <keith@users.osdn.me> |
2 | 39 | |
3 | 40 | Make <wincon.h> header effectively self-contained. |
@@ -1,8 +1,40 @@ | ||
1 | +/* | |
2 | + * wincon.h | |
3 | + * | |
4 | + * Windows console I/O declarations, and API function prototypes. | |
5 | + * | |
6 | + * $Id$ | |
7 | + * | |
8 | + * Written by Anders Norlander <anorland@hem2.passagen.se> | |
9 | + * Copyright (C) 1998, 1999, 2002-2006, 2009, 2011, 2016, 2018, | |
10 | + * MinGW.org Project. | |
11 | + * | |
12 | + * | |
13 | + * Permission is hereby granted, free of charge, to any person obtaining a | |
14 | + * copy of this software and associated documentation files (the "Software"), | |
15 | + * to deal in the Software without restriction, including without limitation | |
16 | + * the rights to use, copy, modify, merge, publish, distribute, sublicense, | |
17 | + * and/or sell copies of the Software, and to permit persons to whom the | |
18 | + * Software is furnished to do so, subject to the following conditions: | |
19 | + * | |
20 | + * The above copyright notice, this permission notice, and the following | |
21 | + * disclaimer shall be included in all copies or substantial portions of | |
22 | + * the Software. | |
23 | + * | |
24 | + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS | |
25 | + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | |
26 | + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL | |
27 | + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | |
28 | + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | |
29 | + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OF OR OTHER | |
30 | + * DEALINGS IN THE SOFTWARE. | |
31 | + * | |
32 | + */ | |
1 | 33 | #ifndef _WINCON_H |
2 | -#define _WINCON_H | |
3 | 34 | #pragma GCC system_header |
35 | +#define _WINCON_H | |
4 | 36 | |
5 | -#if _WIN32_WINNT < 0x0600 | |
37 | +#if _WIN32_WINNT < _WIN32_WINNT_VISTA | |
6 | 38 | /* For effective self-containment, <wincon.h> is dependent on the core set |
7 | 39 | * of Windows' custom type definitions; prior to Vista, it suffices to... |
8 | 40 | */ |
@@ -16,353 +48,377 @@ | ||
16 | 48 | |
17 | 49 | _BEGIN_C_DECLS |
18 | 50 | |
19 | -#define FOREGROUND_BLUE 1 | |
20 | -#define FOREGROUND_GREEN 2 | |
21 | -#define FOREGROUND_RED 4 | |
22 | -#define FOREGROUND_INTENSITY 8 | |
23 | -#define BACKGROUND_BLUE 16 | |
24 | -#define BACKGROUND_GREEN 32 | |
25 | -#define BACKGROUND_RED 64 | |
26 | -#define BACKGROUND_INTENSITY 128 | |
27 | -#define COMMON_LVB_LEADING_BYTE 256 | |
28 | -#define COMMON_LVB_TRAILING_BYTE 512 | |
29 | -#define COMMON_LVB_GRID_HORIZONTAL 1024 | |
30 | -#define COMMON_LVB_GRID_LVERTICAL 2048 | |
31 | -#define COMMON_LVB_GRID_RVERTICAL 4096 | |
32 | -#define COMMON_LVB_REVERSE_VIDEO 16384 | |
33 | -#define COMMON_LVB_UNDERSCORE 32768 | |
34 | -#if (_WIN32_WINNT >= 0x0501) | |
35 | -#define CONSOLE_FULLSCREEN_MODE 1 | |
36 | -#define CONSOLE_WINDOWED_MODE 2 | |
37 | -#define CONSOLE_NO_SELECTION 0 | |
38 | -#define CONSOLE_SELECTION_IN_PROGRESS 1 | |
39 | -#define CONSOLE_SELECTION_NOT_EMPTY 2 | |
40 | -#define CONSOLE_MOUSE_SELECTION 4 | |
41 | -#define CONSOLE_MOUSE_DOWN 8 | |
42 | -#endif | |
43 | -#define CTRL_C_EVENT 0 | |
44 | -#define CTRL_BREAK_EVENT 1 | |
45 | -#define CTRL_CLOSE_EVENT 2 | |
46 | -#define CTRL_LOGOFF_EVENT 5 | |
47 | -#define CTRL_SHUTDOWN_EVENT 6 | |
48 | -#define ENABLE_LINE_INPUT 2 | |
49 | -#define ENABLE_ECHO_INPUT 4 | |
50 | -#define ENABLE_PROCESSED_INPUT 1 | |
51 | -#define ENABLE_WINDOW_INPUT 8 | |
52 | -#define ENABLE_MOUSE_INPUT 16 | |
53 | -#define ENABLE_INSERT_MODE 32 | |
54 | -#define ENABLE_QUICK_EDIT_MODE 64 | |
55 | -#define ENABLE_EXTENDED_FLAGS 128 | |
56 | -#define ENABLE_AUTO_POSITION 256 | |
57 | -#define ENABLE_VIRTUAL_TERMINAL_INPUT 512 | |
58 | -#define ENABLE_PROCESSED_OUTPUT 1 | |
59 | -#define ENABLE_WRAP_AT_EOL_OUTPUT 2 | |
60 | -#define ENABLE_VIRTUAL_TERMINAL_PROCESSING 4 | |
61 | -#define DISABLE_NEWLINE_AUTO_RETURN 8 | |
62 | -#define ENABLE_LVB_GRID_WORLDWIDE 16 | |
63 | -#if (_WIN32_WINNT >= 0x0600) | |
64 | -#define HISTORY_NO_DUP_FLAG 1 | |
65 | -#endif | |
66 | -#define KEY_EVENT 1 | |
67 | -#define MOUSE_EVENT 2 | |
68 | -#define WINDOW_BUFFER_SIZE_EVENT 4 | |
69 | -#define MENU_EVENT 8 | |
70 | -#define FOCUS_EVENT 16 | |
71 | -#define CAPSLOCK_ON 128 | |
72 | -#define ENHANCED_KEY 256 | |
73 | -#define RIGHT_ALT_PRESSED 1 | |
74 | -#define LEFT_ALT_PRESSED 2 | |
75 | -#define RIGHT_CTRL_PRESSED 4 | |
76 | -#define LEFT_CTRL_PRESSED 8 | |
77 | -#define SHIFT_PRESSED 16 | |
78 | -#define NUMLOCK_ON 32 | |
79 | -#define SCROLLLOCK_ON 64 | |
80 | -#define FROM_LEFT_1ST_BUTTON_PRESSED 1 | |
81 | -#define RIGHTMOST_BUTTON_PRESSED 2 | |
82 | -#define FROM_LEFT_2ND_BUTTON_PRESSED 4 | |
83 | -#define FROM_LEFT_3RD_BUTTON_PRESSED 8 | |
84 | -#define FROM_LEFT_4TH_BUTTON_PRESSED 16 | |
85 | -#define MOUSE_MOVED 1 | |
86 | -#define DOUBLE_CLICK 2 | |
87 | -#define MOUSE_WHEELED 4 | |
88 | -#define MOUSE_HWHEELED 8 | |
89 | -#if (_WIN32_WINNT >= 0x0500) | |
90 | -#define CONSOLE_FULLSCREEN 1 | |
91 | -#define CONSOLE_FULLSCREEN_HARDWARE 2 | |
92 | -#endif | |
51 | +#define FOREGROUND_BLUE 0x0001 | |
52 | +#define FOREGROUND_GREEN 0x0002 | |
53 | +#define FOREGROUND_RED 0x0004 | |
54 | +#define FOREGROUND_INTENSITY 0x0008 | |
55 | +#define BACKGROUND_BLUE 0x0010 | |
56 | +#define BACKGROUND_GREEN 0x0020 | |
57 | +#define BACKGROUND_RED 0x0040 | |
58 | +#define BACKGROUND_INTENSITY 0x0080 | |
59 | + | |
60 | +#define COMMON_LVB_LEADING_BYTE 0x0100 | |
61 | +#define COMMON_LVB_TRAILING_BYTE 0x0200 | |
62 | +#define COMMON_LVB_GRID_HORIZONTAL 0x0400 | |
63 | +#define COMMON_LVB_GRID_LVERTICAL 0x0800 | |
64 | +#define COMMON_LVB_GRID_RVERTICAL 0x1000 | |
65 | +#define COMMON_LVB_REVERSE_VIDEO 0x4000 | |
66 | +#define COMMON_LVB_UNDERSCORE 0x8000 | |
93 | 67 | |
94 | -typedef struct _CHAR_INFO { | |
95 | - union { | |
96 | - WCHAR UnicodeChar; | |
97 | - CHAR AsciiChar; | |
98 | - } Char; | |
99 | - WORD Attributes; | |
68 | +#define CTRL_C_EVENT 0x0000 | |
69 | +#define CTRL_BREAK_EVENT 0x0001 | |
70 | +#define CTRL_CLOSE_EVENT 0x0002 | |
71 | +#define CTRL_LOGOFF_EVENT 0x0005 | |
72 | +#define CTRL_SHUTDOWN_EVENT 0x0006 | |
73 | + | |
74 | +#define ENABLE_LINE_INPUT 0x0002 | |
75 | +#define ENABLE_ECHO_INPUT 0x0004 | |
76 | +#define ENABLE_PROCESSED_INPUT 0x0001 | |
77 | +#define ENABLE_WINDOW_INPUT 0x0008 | |
78 | +#define ENABLE_MOUSE_INPUT 0x0010 | |
79 | +#define ENABLE_INSERT_MODE 0x0020 | |
80 | +#define ENABLE_QUICK_EDIT_MODE 0x0040 | |
81 | +#define ENABLE_EXTENDED_FLAGS 0x0080 | |
82 | +#define ENABLE_AUTO_POSITION 0x0100 | |
83 | +#define ENABLE_VIRTUAL_TERMINAL_INPUT 0x0200 | |
84 | +#define ENABLE_PROCESSED_OUTPUT 0x0001 | |
85 | +#define ENABLE_WRAP_AT_EOL_OUTPUT 0x0002 | |
86 | +#define ENABLE_VIRTUAL_TERMINAL_PROCESSING 0x0004 | |
87 | +#define DISABLE_NEWLINE_AUTO_RETURN 0x0008 | |
88 | +#define ENABLE_LVB_GRID_WORLDWIDE 0x0010 | |
89 | + | |
90 | +#define KEY_EVENT 0x0001 | |
91 | +#define MOUSE_EVENT 0x0002 | |
92 | +#define WINDOW_BUFFER_SIZE_EVENT 0x0004 | |
93 | +#define MENU_EVENT 0x0008 | |
94 | +#define FOCUS_EVENT 0x0010 | |
95 | +#define CAPSLOCK_ON 0x0080 | |
96 | +#define ENHANCED_KEY 0x0100 | |
97 | + | |
98 | +#define RIGHT_ALT_PRESSED 0x0001 | |
99 | +#define LEFT_ALT_PRESSED 0x0002 | |
100 | +#define RIGHT_CTRL_PRESSED 0x0004 | |
101 | +#define LEFT_CTRL_PRESSED 0x0008 | |
102 | +#define SHIFT_PRESSED 0x0010 | |
103 | +#define NUMLOCK_ON 0x0020 | |
104 | +#define SCROLLLOCK_ON 0x0040 | |
105 | + | |
106 | +#define FROM_LEFT_1ST_BUTTON_PRESSED 0x0001 | |
107 | +#define RIGHTMOST_BUTTON_PRESSED 0x0002 | |
108 | +#define FROM_LEFT_2ND_BUTTON_PRESSED 0x0004 | |
109 | +#define FROM_LEFT_3RD_BUTTON_PRESSED 0x0008 | |
110 | +#define FROM_LEFT_4TH_BUTTON_PRESSED 0x0010 | |
111 | +#define MOUSE_MOVED 0x0001 | |
112 | +#define DOUBLE_CLICK 0x0002 | |
113 | +#define MOUSE_WHEELED 0x0004 | |
114 | +#define MOUSE_HWHEELED 0x0008 | |
115 | + | |
116 | +typedef | |
117 | +struct _CHAR_INFO | |
118 | +{ union | |
119 | + { WCHAR UnicodeChar; | |
120 | + CHAR AsciiChar; | |
121 | + } Char; | |
122 | + WORD Attributes; | |
100 | 123 | } CHAR_INFO, *PCHAR_INFO; |
101 | -typedef struct _SMALL_RECT { | |
102 | - SHORT Left; | |
103 | - SHORT Top; | |
104 | - SHORT Right; | |
105 | - SHORT Bottom; | |
124 | + | |
125 | +typedef | |
126 | +struct _SMALL_RECT | |
127 | +{ SHORT Left; | |
128 | + SHORT Top; | |
129 | + SHORT Right; | |
130 | + SHORT Bottom; | |
106 | 131 | } SMALL_RECT, *PSMALL_RECT; |
107 | -typedef struct _CONSOLE_CURSOR_INFO { | |
108 | - DWORD dwSize; | |
109 | - BOOL bVisible; | |
110 | -} CONSOLE_CURSOR_INFO,*PCONSOLE_CURSOR_INFO; | |
111 | -typedef struct _COORD { | |
112 | - SHORT X; | |
113 | - SHORT Y; | |
132 | + | |
133 | +typedef | |
134 | +struct _CONSOLE_CURSOR_INFO | |
135 | +{ DWORD dwSize; | |
136 | + BOOL bVisible; | |
137 | +} CONSOLE_CURSOR_INFO, *PCONSOLE_CURSOR_INFO; | |
138 | + | |
139 | +typedef | |
140 | +struct _COORD | |
141 | +{ SHORT X; | |
142 | + SHORT Y; | |
114 | 143 | } COORD, *PCOORD; |
115 | -#if (_WIN32_WINNT >= 0x0501) | |
116 | -typedef struct _CONSOLE_FONT_INFO { | |
117 | - DWORD nFont; | |
118 | - COORD dwFontSize; | |
119 | -} CONSOLE_FONT_INFO, *PCONSOLE_FONT_INFO; | |
144 | + | |
145 | +typedef | |
146 | +struct _CONSOLE_SCREEN_BUFFER_INFO | |
147 | +{ COORD dwSize; | |
148 | + COORD dwCursorPosition; | |
149 | + WORD wAttributes; | |
150 | + SMALL_RECT srWindow; | |
151 | + COORD dwMaximumWindowSize; | |
152 | +} CONSOLE_SCREEN_BUFFER_INFO, *PCONSOLE_SCREEN_BUFFER_INFO; | |
153 | + | |
154 | +typedef BOOL (CALLBACK *PHANDLER_ROUTINE)(DWORD); | |
155 | + | |
156 | +typedef | |
157 | +struct _KEY_EVENT_RECORD | |
158 | +#ifdef __GNUC__ /* gcc's alignment is not what Win32 expects here! */ | |
159 | +# define __MINGW_ATTRIBUTE_PACKED__ __attribute__((packed)) | |
160 | +#else | |
161 | +# define __MINGW_ATTRIBUTE_PACKED__ | |
120 | 162 | #endif |
121 | -#if (_WIN32_WINNT >= 0x600) | |
122 | -typedef struct _CONSOLE_FONT_INFOEX { | |
123 | - ULONG cbSize; | |
124 | - DWORD nFont; | |
125 | - COORD dwFontSize; | |
126 | - UINT FontFamily; | |
127 | - UINT FontWeight; | |
128 | - WCHAR FaceName[LF_FACESIZE]; | |
163 | +{ BOOL bKeyDown; | |
164 | + WORD wRepeatCount; | |
165 | + WORD wVirtualKeyCode; | |
166 | + WORD wVirtualScanCode; | |
167 | + union | |
168 | + { WCHAR UnicodeChar; | |
169 | + CHAR AsciiChar; | |
170 | + } uChar; | |
171 | + DWORD dwControlKeyState; | |
172 | +} __MINGW_ATTRIBUTE_PACKED__ KEY_EVENT_RECORD; | |
173 | + | |
174 | +typedef | |
175 | +struct _MOUSE_EVENT_RECORD | |
176 | +{ COORD dwMousePosition; | |
177 | + DWORD dwButtonState; | |
178 | + DWORD dwControlKeyState; | |
179 | + DWORD dwEventFlags; | |
180 | +} MOUSE_EVENT_RECORD; | |
181 | + | |
182 | +typedef | |
183 | +struct _WINDOW_BUFFER_SIZE_RECORD | |
184 | +{ COORD dwSize; | |
185 | +} WINDOW_BUFFER_SIZE_RECORD; | |
186 | + | |
187 | +typedef | |
188 | +struct _MENU_EVENT_RECORD | |
189 | +{ UINT dwCommandId; | |
190 | +} MENU_EVENT_RECORD, *PMENU_EVENT_RECORD; | |
191 | + | |
192 | +typedef | |
193 | +struct _FOCUS_EVENT_RECORD | |
194 | +{ BOOL bSetFocus; | |
195 | +} FOCUS_EVENT_RECORD; | |
196 | + | |
197 | +typedef | |
198 | +struct _INPUT_RECORD | |
199 | +{ WORD EventType; | |
200 | + union | |
201 | + { KEY_EVENT_RECORD KeyEvent; | |
202 | + MOUSE_EVENT_RECORD MouseEvent; | |
203 | + WINDOW_BUFFER_SIZE_RECORD WindowBufferSizeEvent; | |
204 | + MENU_EVENT_RECORD MenuEvent; | |
205 | + FOCUS_EVENT_RECORD FocusEvent; | |
206 | + } Event; | |
207 | +} INPUT_RECORD, *PINPUT_RECORD; | |
208 | + | |
209 | +WINAPI BOOL AllocConsole (void); | |
210 | +WINAPI HANDLE CreateConsoleScreenBuffer (DWORD, DWORD, CONST SECURITY_ATTRIBUTES *, DWORD, LPVOID); | |
211 | +WINAPI BOOL FillConsoleOutputAttribute (HANDLE, WORD, DWORD, COORD, PDWORD); | |
212 | + | |
213 | +#define FillConsoleOutputCharacter __AW_SUFFIXED__(FillConsoleOutputCharacter) | |
214 | +WINAPI BOOL FillConsoleOutputCharacterA (HANDLE, CHAR, DWORD, COORD, PDWORD); | |
215 | +WINAPI BOOL FillConsoleOutputCharacterW (HANDLE, WCHAR, DWORD, COORD, PDWORD); | |
216 | + | |
217 | +WINAPI BOOL FlushConsoleInputBuffer (HANDLE); | |
218 | +WINAPI BOOL FreeConsole (void); | |
219 | +WINAPI BOOL GenerateConsoleCtrlEvent (DWORD, DWORD); | |
220 | + | |
221 | +#define GetConsoleAlias __AW_SUFFIXED__(GetConsoleAlias) | |
222 | +WINAPI DWORD GetConsoleAliasA (LPSTR, LPSTR, DWORD, LPSTR); | |
223 | +WINAPI DWORD GetConsoleAliasW (LPWSTR, LPWSTR, DWORD, LPWSTR); | |
224 | + | |
225 | +WINAPI UINT GetConsoleCP (void); | |
226 | +WINAPI BOOL GetConsoleCursorInfo (HANDLE, PCONSOLE_CURSOR_INFO); | |
227 | +WINAPI BOOL GetConsoleMode (HANDLE, PDWORD); | |
228 | +WINAPI UINT GetConsoleOutputCP (void); | |
229 | +WINAPI BOOL GetConsoleScreenBufferInfo (HANDLE, PCONSOLE_SCREEN_BUFFER_INFO); | |
230 | + | |
231 | +#define GetConsoleTitle __AW_SUFFIXED__(GetConsoleTitle) | |
232 | +WINAPI DWORD GetConsoleTitleA (LPSTR, DWORD); | |
233 | +WINAPI DWORD GetConsoleTitleW (LPWSTR, DWORD); | |
234 | + | |
235 | +WINAPI COORD GetLargestConsoleWindowSize (HANDLE); | |
236 | +WINAPI BOOL GetNumberOfConsoleInputEvents (HANDLE, PDWORD); | |
237 | +WINAPI BOOL GetNumberOfConsoleMouseButtons (PDWORD); | |
238 | +WINAPI BOOL HandlerRoutine (DWORD); | |
239 | + | |
240 | +#define PeekConsoleInput __AW_SUFFIXED__(PeekConsoleInput) | |
241 | +WINAPI BOOL PeekConsoleInputA (HANDLE, PINPUT_RECORD, DWORD, PDWORD); | |
242 | +WINAPI BOOL PeekConsoleInputW (HANDLE, PINPUT_RECORD, DWORD, PDWORD); | |
243 | + | |
244 | +#define ReadConsole __AW_SUFFIXED__(ReadConsole) | |
245 | +WINAPI BOOL ReadConsoleA (HANDLE, PVOID, DWORD, PDWORD, PVOID); | |
246 | +WINAPI BOOL ReadConsoleW (HANDLE, PVOID, DWORD, PDWORD, PVOID); | |
247 | + | |
248 | +#define ReadConsoleInput __AW_SUFFIXED__(ReadConsoleInput) | |
249 | +WINAPI BOOL ReadConsoleInputA (HANDLE, PINPUT_RECORD, DWORD, PDWORD); | |
250 | +WINAPI BOOL ReadConsoleInputW (HANDLE, PINPUT_RECORD, DWORD, PDWORD); | |
251 | + | |
252 | +WINAPI BOOL ReadConsoleOutputAttribute (HANDLE, LPWORD, DWORD, COORD, LPDWORD); | |
253 | + | |
254 | +#define ReadConsoleOutputCharacter __AW_SUFFIXED__(ReadConsoleOutputCharacter) | |
255 | +WINAPI BOOL ReadConsoleOutputCharacterA (HANDLE, LPSTR, DWORD, COORD, PDWORD); | |
256 | +WINAPI BOOL ReadConsoleOutputCharacterW (HANDLE, LPWSTR, DWORD, COORD, PDWORD); | |
257 | + | |
258 | +#define ReadConsoleOutput __AW_SUFFIXED__(ReadConsoleOutput) | |
259 | +WINAPI BOOL ReadConsoleOutputA (HANDLE, PCHAR_INFO, COORD, COORD, PSMALL_RECT); | |
260 | +WINAPI BOOL ReadConsoleOutputW (HANDLE, PCHAR_INFO, COORD, COORD, PSMALL_RECT); | |
261 | + | |
262 | +#define ScrollConsoleScreenBuffer __AW_SUFFIXED__(ScrollConsoleScreenBuffer) | |
263 | +WINAPI BOOL ScrollConsoleScreenBufferA | |
264 | +(HANDLE, const SMALL_RECT *, const SMALL_RECT *, COORD, const CHAR_INFO *); | |
265 | +WINAPI BOOL ScrollConsoleScreenBufferW | |
266 | +(HANDLE, const SMALL_RECT *, const SMALL_RECT *, COORD, const CHAR_INFO *); | |
267 | + | |
268 | +WINAPI BOOL SetConsoleActiveScreenBuffer (HANDLE); | |
269 | +WINAPI BOOL SetConsoleCP (UINT); | |
270 | +WINAPI BOOL SetConsoleCtrlHandler (PHANDLER_ROUTINE, BOOL); | |
271 | +WINAPI BOOL SetConsoleCursorInfo (HANDLE, const CONSOLE_CURSOR_INFO *); | |
272 | +WINAPI BOOL SetConsoleCursorPosition (HANDLE, COORD); | |
273 | +WINAPI BOOL SetConsoleMode (HANDLE, DWORD); | |
274 | +WINAPI BOOL SetConsoleOutputCP (UINT); | |
275 | +WINAPI BOOL SetConsoleScreenBufferSize (HANDLE, COORD); | |
276 | +WINAPI BOOL SetConsoleTextAttribute (HANDLE, WORD); | |
277 | + | |
278 | +#define SetConsoleTitle __AW_SUFFIXED__(SetConsoleTitle) | |
279 | +WINAPI BOOL SetConsoleTitleA (LPCSTR); | |
280 | +WINAPI BOOL SetConsoleTitleW (LPCWSTR); | |
281 | + | |
282 | +WINAPI BOOL SetConsoleWindowInfo (HANDLE, BOOL, const SMALL_RECT *); | |
283 | + | |
284 | +#define WriteConsole __AW_SUFFIXED__(WriteConsole) | |
285 | +WINAPI BOOL WriteConsoleA (HANDLE, PCVOID, DWORD, PDWORD, PVOID); | |
286 | +WINAPI BOOL WriteConsoleW (HANDLE, PCVOID, DWORD, PDWORD, PVOID); | |
287 | + | |
288 | +#define WriteConsoleInput __AW_SUFFIXED__(WriteConsoleInput) | |
289 | +WINAPI BOOL WriteConsoleInputA (HANDLE, const INPUT_RECORD *, DWORD, PDWORD); | |
290 | +WINAPI BOOL WriteConsoleInputW (HANDLE, const INPUT_RECORD *, DWORD, PDWORD); | |
291 | + | |
292 | +#define WriteConsoleOutput __AW_SUFFIXED__(WriteConsoleOutput) | |
293 | +WINAPI BOOL WriteConsoleOutputA (HANDLE, const CHAR_INFO *, COORD, COORD, PSMALL_RECT); | |
294 | +WINAPI BOOL WriteConsoleOutputW (HANDLE, const CHAR_INFO *, COORD, COORD, PSMALL_RECT); | |
295 | + | |
296 | +WINAPI BOOL WriteConsoleOutputAttribute (HANDLE, const WORD *, DWORD, COORD, PDWORD); | |
297 | + | |
298 | +#define WriteConsoleOutputCharacter __AW_SUFFIXED__(WriteConsoleOutputCharacter) | |
299 | +WINAPI BOOL WriteConsoleOutputCharacterA (HANDLE, LPCSTR, DWORD, COORD, PDWORD); | |
300 | +WINAPI BOOL WriteConsoleOutputCharacterW (HANDLE, LPCWSTR, DWORD, COORD, PDWORD); | |
301 | + | |
302 | +#if _WIN32_WINNT >= _WIN32_WINNT_WIN2K | |
303 | + | |
304 | +#define CONSOLE_FULLSCREEN 0x0001 | |
305 | +#define CONSOLE_FULLSCREEN_HARDWARE 0x0002 | |
306 | + | |
307 | +WINAPI BOOL GetConsoleDisplayMode (LPDWORD); | |
308 | +WINAPI COORD GetConsoleFontSize (HANDLE, DWORD); | |
309 | +WINAPI HWND GetConsoleWindow (void); | |
310 | + | |
311 | +#if _WIN32_WINNT >= _WIN32_WINNT_WINXP | |
312 | + | |
313 | +#define CONSOLE_FULLSCREEN_MODE 0x0001 | |
314 | +#define CONSOLE_WINDOWED_MODE 0x0002 | |
315 | +#define CONSOLE_NO_SELECTION 0x0000 | |
316 | +#define CONSOLE_SELECTION_IN_PROGRESS 0x0001 | |
317 | +#define CONSOLE_SELECTION_NOT_EMPTY 0x0002 | |
318 | +#define CONSOLE_MOUSE_SELECTION 0x0004 | |
319 | +#define CONSOLE_MOUSE_DOWN 0x0008 | |
320 | + | |
321 | +typedef | |
322 | +struct _CONSOLE_FONT_INFO | |
323 | +{ DWORD nFont; | |
324 | + COORD dwFontSize; | |
325 | +} CONSOLE_FONT_INFO, *PCONSOLE_FONT_INFO; | |
326 | + | |
327 | +typedef | |
328 | +struct _CONSOLE_SELECTION_INFO | |
329 | +{ DWORD dwFlags; | |
330 | + COORD dwSelectionAnchor; | |
331 | + SMALL_RECT srSelection; | |
332 | +} CONSOLE_SELECTION_INFO, *PCONSOLE_SELECTION_INFO; | |
333 | + | |
334 | +#define AddConsoleAlias __AW_SUFFIXED__(AddConsoleAlias) | |
335 | +WINAPI BOOL AddConsoleAliasA (LPCSTR, LPCSTR, LPCSTR); | |
336 | +WINAPI BOOL AddConsoleAliasW (LPCWSTR, LPCWSTR, LPCWSTR); | |
337 | + | |
338 | +#define ATTACH_PARENT_PROCESS ((DWORD)(-1)) | |
339 | + | |
340 | +WINAPI BOOL AttachConsole (DWORD); | |
341 | + | |
342 | +#define GetConsoleAliases __AW_SUFFIXED__(GetConsoleAliases) | |
343 | +WINAPI DWORD GetConsoleAliasesA (LPSTR, DWORD, LPSTR); | |
344 | +WINAPI DWORD GetConsoleAliasesW (LPWSTR, DWORD, LPWSTR); | |
345 | + | |
346 | +#define GetConsoleAliasExes __AW_SUFFIXED__(GetConsoleAliasExes) | |
347 | +WINAPI DWORD GetConsoleAliasExesA (LPSTR, DWORD); | |
348 | +WINAPI DWORD GetConsoleAliasExesW (LPWSTR, DWORD); | |
349 | + | |
350 | +#define GetConsoleAliasesLength __AW_SUFFIXED__(GetConsoleAliasesLength) | |
351 | +WINAPI DWORD GetConsoleAliasesLengthA (LPSTR); | |
352 | +WINAPI DWORD GetConsoleAliasesLengthW (LPWSTR); | |
353 | + | |
354 | +#define GetConsoleAliasExesLength __AW_SUFFIXED__(GetConsoleAliasExesLength) | |
355 | +WINAPI DWORD GetConsoleAliasExesLengthA (void); | |
356 | +WINAPI DWORD GetConsoleAliasExesLengthW (void); | |
357 | + | |
358 | +WINAPI BOOL GetConsoleSelectionInfo (PCONSOLE_SELECTION_INFO); | |
359 | +WINAPI DWORD GetConsoleProcessList (LPDWORD, DWORD); | |
360 | +WINAPI BOOL GetCurrentConsoleFont (HANDLE, BOOL, PCONSOLE_FONT_INFO); | |
361 | +WINAPI BOOL SetConsoleDisplayMode (HANDLE, DWORD, PCOORD); | |
362 | + | |
363 | +#if _WIN32_WINNT >= _WIN32_WINNT_VISTA | |
364 | + | |
365 | +#define HISTORY_NO_DUP_FLAG 0x0001 | |
366 | + | |
367 | +typedef | |
368 | +struct _CONSOLE_FONT_INFOEX | |
369 | +{ ULONG cbSize; | |
370 | + DWORD nFont; | |
371 | + COORD dwFontSize; | |
372 | + UINT FontFamily; | |
373 | + UINT FontWeight; | |
374 | + WCHAR FaceName[LF_FACESIZE]; | |
129 | 375 | } CONSOLE_FONT_INFOEX, *PCONSOLE_FONT_INFOEX; |
130 | -typedef struct { | |
131 | - UINT cbSize; | |
132 | - UINT HistoryBufferSize; | |
133 | - UINT NumberOfHistoryBuffers; | |
134 | - DWORD dwFlags; | |
376 | + | |
377 | +typedef | |
378 | +struct | |
379 | +{ UINT cbSize; | |
380 | + UINT HistoryBufferSize; | |
381 | + UINT NumberOfHistoryBuffers; | |
382 | + DWORD dwFlags; | |
135 | 383 | } CONSOLE_HISTORY_INFO, *PCONSOLE_HISTORY_INFO; |
136 | -typedef struct _CONSOLE_READCONSOLE_CONTROL { | |
137 | - ULONG nLength; | |
138 | - ULONG nInitialChars; | |
139 | - ULONG dwCtrlWakeupMask; | |
140 | - ULONG dwControlKeyState; | |
384 | + | |
385 | +typedef | |
386 | +struct _CONSOLE_READCONSOLE_CONTROL | |
387 | +{ ULONG nLength; | |
388 | + ULONG nInitialChars; | |
389 | + ULONG dwCtrlWakeupMask; | |
390 | + ULONG dwControlKeyState; | |
141 | 391 | } CONSOLE_READCONSOLE_CONTROL, *PCONSOLE_READCONSOLE_CONTROL; |
142 | -#endif | |
143 | 392 | |
144 | -typedef struct _CONSOLE_SCREEN_BUFFER_INFO { | |
145 | - COORD dwSize; | |
146 | - COORD dwCursorPosition; | |
147 | - WORD wAttributes; | |
148 | - SMALL_RECT srWindow; | |
149 | - COORD dwMaximumWindowSize; | |
150 | -} CONSOLE_SCREEN_BUFFER_INFO,*PCONSOLE_SCREEN_BUFFER_INFO; | |
151 | -#if (_WIN32_WINNT >= 0x0600) | |
152 | -typedef struct _CONSOLE_SCREEN_BUFFER_INFOEX { | |
153 | - ULONG cbSize; | |
154 | - COORD dwSize; | |
155 | - COORD dwCursorPosition; | |
156 | - WORD wAttributes; | |
157 | - SMALL_RECT srWindow; | |
158 | - COORD dwMaximumWindowSize; | |
159 | - WORD wPopupAttributes; | |
160 | - BOOL bFullscreenSupported; | |
161 | - COLORREF ColorTable[16]; | |
393 | +typedef | |
394 | +struct _CONSOLE_SCREEN_BUFFER_INFOEX | |
395 | +{ ULONG cbSize; | |
396 | + COORD dwSize; | |
397 | + COORD dwCursorPosition; | |
398 | + WORD wAttributes; | |
399 | + SMALL_RECT srWindow; | |
400 | + COORD dwMaximumWindowSize; | |
401 | + WORD wPopupAttributes; | |
402 | + BOOL bFullscreenSupported; | |
403 | + COLORREF ColorTable[16]; | |
162 | 404 | } CONSOLE_SCREEN_BUFFER_INFOEX, *PCONSOLE_SCREEN_BUFFER_INFOEX; |
163 | -#endif | |
164 | -#if (_WIN32_WINNT >= 0x0501) | |
165 | -typedef struct _CONSOLE_SELECTION_INFO { | |
166 | - DWORD dwFlags; | |
167 | - COORD dwSelectionAnchor; | |
168 | - SMALL_RECT srSelection; | |
169 | -} CONSOLE_SELECTION_INFO, *PCONSOLE_SELECTION_INFO; | |
170 | -#endif | |
171 | -typedef BOOL(CALLBACK *PHANDLER_ROUTINE)(DWORD); | |
172 | -typedef struct _KEY_EVENT_RECORD { | |
173 | - BOOL bKeyDown; | |
174 | - WORD wRepeatCount; | |
175 | - WORD wVirtualKeyCode; | |
176 | - WORD wVirtualScanCode; | |
177 | - union { | |
178 | - WCHAR UnicodeChar; | |
179 | - CHAR AsciiChar; | |
180 | - } uChar; | |
181 | - DWORD dwControlKeyState; | |
182 | -} | |
183 | -#ifdef __GNUC__ | |
184 | -/* gcc's alignment is not what win32 expects */ | |
185 | - __attribute__((packed)) | |
186 | -#endif | |
187 | -KEY_EVENT_RECORD; | |
188 | 405 | |
189 | -typedef struct _MOUSE_EVENT_RECORD { | |
190 | - COORD dwMousePosition; | |
191 | - DWORD dwButtonState; | |
192 | - DWORD dwControlKeyState; | |
193 | - DWORD dwEventFlags; | |
194 | -} MOUSE_EVENT_RECORD; | |
195 | -typedef struct _WINDOW_BUFFER_SIZE_RECORD { COORD dwSize; } WINDOW_BUFFER_SIZE_RECORD; | |
196 | -typedef struct _MENU_EVENT_RECORD { UINT dwCommandId; } MENU_EVENT_RECORD,*PMENU_EVENT_RECORD; | |
197 | -typedef struct _FOCUS_EVENT_RECORD { BOOL bSetFocus; } FOCUS_EVENT_RECORD; | |
198 | -typedef struct _INPUT_RECORD { | |
199 | - WORD EventType; | |
200 | - union { | |
201 | - KEY_EVENT_RECORD KeyEvent; | |
202 | - MOUSE_EVENT_RECORD MouseEvent; | |
203 | - WINDOW_BUFFER_SIZE_RECORD WindowBufferSizeEvent; | |
204 | - MENU_EVENT_RECORD MenuEvent; | |
205 | - FOCUS_EVENT_RECORD FocusEvent; | |
206 | - } Event; | |
207 | -} INPUT_RECORD,*PINPUT_RECORD; | |
208 | - | |
209 | -#if (_WIN32_WINNT >= 0x0501) | |
210 | -BOOL WINAPI AddConsoleAliasA(LPCSTR,LPCSTR,LPCSTR); | |
211 | -BOOL WINAPI AddConsoleAliasW(LPCWSTR,LPCWSTR,LPCWSTR); | |
212 | -#endif | |
213 | -BOOL WINAPI AllocConsole(void); | |
214 | -#if (_WIN32_WINNT >= 0x0501) | |
215 | -#define ATTACH_PARENT_PROCESS ((DWORD)-1) | |
216 | -BOOL WINAPI AttachConsole(DWORD); | |
217 | -#endif | |
218 | -HANDLE WINAPI CreateConsoleScreenBuffer(DWORD,DWORD,CONST SECURITY_ATTRIBUTES*,DWORD,LPVOID); | |
219 | -BOOL WINAPI FillConsoleOutputAttribute(HANDLE,WORD,DWORD,COORD,PDWORD); | |
220 | -BOOL WINAPI FillConsoleOutputCharacterA(HANDLE,CHAR,DWORD,COORD,PDWORD); | |
221 | -BOOL WINAPI FillConsoleOutputCharacterW(HANDLE,WCHAR,DWORD,COORD,PDWORD); | |
222 | -BOOL WINAPI FlushConsoleInputBuffer(HANDLE); | |
223 | -BOOL WINAPI FreeConsole(void); | |
224 | -BOOL WINAPI GenerateConsoleCtrlEvent(DWORD,DWORD); | |
225 | -DWORD WINAPI GetConsoleAliasA(LPSTR,LPSTR,DWORD,LPSTR); | |
226 | -DWORD WINAPI GetConsoleAliasW(LPWSTR,LPWSTR,DWORD,LPWSTR); | |
227 | -#if (_WIN32_WINNT >= 0x0501) | |
228 | -DWORD WINAPI GetConsoleAliasesA(LPSTR,DWORD,LPSTR); | |
229 | -DWORD WINAPI GetConsoleAliasesW(LPWSTR,DWORD,LPWSTR); | |
230 | -DWORD WINAPI GetConsoleAliasExesA(LPSTR,DWORD); | |
231 | -DWORD WINAPI GetConsoleAliasExesW(LPWSTR,DWORD); | |
232 | -DWORD WINAPI GetConsoleAliasesLengthA(LPSTR); | |
233 | -DWORD WINAPI GetConsoleAliasesLengthW(LPWSTR); | |
234 | -DWORD WINAPI GetConsoleAliasExesLengthA(void); | |
235 | -DWORD WINAPI GetConsoleAliasExesLengthW(void); | |
236 | -#endif | |
237 | -UINT WINAPI GetConsoleCP(void); | |
238 | -#if (_WIN32_WINNT >= 0x0500) | |
239 | -COORD WINAPI GetConsoleFontSize(HANDLE,DWORD); | |
240 | -#endif | |
241 | -BOOL WINAPI GetConsoleCursorInfo(HANDLE,PCONSOLE_CURSOR_INFO); | |
242 | -#if (_WIN32_WINNT >= 0x0600) | |
243 | -BOOL WINAPI GetConsoleHistoryInfo(PCONSOLE_HISTORY_INFO); | |
244 | -#endif | |
245 | -BOOL WINAPI GetConsoleMode(HANDLE,PDWORD); | |
246 | -#if (_WIN32_WINNT >= 0x0600) | |
247 | -DWORD WINAPI GetConsoleOriginalTitleA(LPSTR,DWORD); | |
248 | -DWORD WINAPI GetConsoleOriginalTitleW(LPWSTR,DWORD); | |
249 | -#endif | |
250 | -UINT WINAPI GetConsoleOutputCP(void); | |
251 | -#if (_WIN32_WINNT >= 0x0501) | |
252 | -BOOL WINAPI GetConsoleSelectionInfo(PCONSOLE_SELECTION_INFO); | |
253 | -#endif | |
254 | -BOOL WINAPI GetConsoleScreenBufferInfo(HANDLE,PCONSOLE_SCREEN_BUFFER_INFO); | |
255 | -#if (_WIN32_WINNT >= 0x0600) | |
256 | -BOOL WINAPI GetConsoleScreenBufferInfoEx(HANDLE,PCONSOLE_SCREEN_BUFFER_INFOEX); | |
257 | -#endif | |
258 | -DWORD WINAPI GetConsoleTitleA(LPSTR,DWORD); | |
259 | -DWORD WINAPI GetConsoleTitleW(LPWSTR,DWORD); | |
260 | -#if (_WIN32_WINNT >= 0x0500) | |
261 | -BOOL WINAPI GetConsoleDisplayMode(LPDWORD); | |
262 | -HWND WINAPI GetConsoleWindow(void); | |
263 | -#endif | |
264 | -#if (_WIN32_WINNT >= 0x0501) | |
265 | -DWORD WINAPI GetConsoleProcessList(LPDWORD, DWORD); | |
266 | -BOOL WINAPI GetCurrentConsoleFont(HANDLE,BOOL,PCONSOLE_FONT_INFO); | |
267 | -#endif | |
268 | -#if (_WIN32_WINNT >= 0x0600) | |
269 | -BOOL WINAPI GetCurrentConsoleFontEx(HANDLE,BOOL,PCONSOLE_FONT_INFOEX); | |
270 | -#endif | |
271 | -COORD WINAPI GetLargestConsoleWindowSize(HANDLE); | |
272 | -BOOL WINAPI GetNumberOfConsoleInputEvents(HANDLE,PDWORD); | |
273 | -BOOL WINAPI GetNumberOfConsoleMouseButtons(PDWORD); | |
274 | -BOOL WINAPI HandlerRoutine(DWORD); | |
275 | -BOOL WINAPI PeekConsoleInputA(HANDLE,PINPUT_RECORD,DWORD,PDWORD); | |
276 | -BOOL WINAPI PeekConsoleInputW(HANDLE,PINPUT_RECORD,DWORD,PDWORD); | |
277 | -BOOL WINAPI ReadConsoleA(HANDLE,PVOID,DWORD,PDWORD,PVOID); | |
278 | -BOOL WINAPI ReadConsoleW(HANDLE,PVOID,DWORD,PDWORD,PVOID); | |
279 | -BOOL WINAPI ReadConsoleInputA(HANDLE,PINPUT_RECORD,DWORD,PDWORD); | |
280 | -BOOL WINAPI ReadConsoleInputW(HANDLE,PINPUT_RECORD,DWORD,PDWORD); | |
281 | -BOOL WINAPI ReadConsoleOutputAttribute(HANDLE,LPWORD,DWORD,COORD,LPDWORD); | |
282 | -BOOL WINAPI ReadConsoleOutputCharacterA(HANDLE,LPSTR,DWORD,COORD,PDWORD); | |
283 | -BOOL WINAPI ReadConsoleOutputCharacterW(HANDLE,LPWSTR,DWORD,COORD,PDWORD); | |
284 | -BOOL WINAPI ReadConsoleOutputA(HANDLE,PCHAR_INFO,COORD,COORD,PSMALL_RECT); | |
285 | -BOOL WINAPI ReadConsoleOutputW(HANDLE,PCHAR_INFO,COORD,COORD,PSMALL_RECT); | |
286 | -BOOL WINAPI ScrollConsoleScreenBufferA(HANDLE,const SMALL_RECT*,const SMALL_RECT*,COORD,const CHAR_INFO*); | |
287 | -BOOL WINAPI ScrollConsoleScreenBufferW(HANDLE,const SMALL_RECT*,const SMALL_RECT*,COORD,const CHAR_INFO*); | |
288 | -BOOL WINAPI SetConsoleActiveScreenBuffer(HANDLE); | |
289 | -BOOL WINAPI SetConsoleCP(UINT); | |
290 | -BOOL WINAPI SetConsoleCtrlHandler(PHANDLER_ROUTINE,BOOL); | |
291 | -BOOL WINAPI SetConsoleCursorInfo(HANDLE,const CONSOLE_CURSOR_INFO*); | |
292 | -BOOL WINAPI SetConsoleCursorPosition(HANDLE,COORD); | |
293 | -#if (_WIN32_WINNT >= 0x0501) | |
294 | -BOOL WINAPI SetConsoleDisplayMode(HANDLE,DWORD,PCOORD); | |
295 | -#endif | |
296 | -#if (_WIN32_WINNT >= 0x0600) | |
297 | -BOOL WINAPI SetConsoleHistoryInfo(PCONSOLE_HISTORY_INFO); | |
298 | -#endif | |
299 | -BOOL WINAPI SetConsoleMode(HANDLE,DWORD); | |
300 | -BOOL WINAPI SetConsoleOutputCP(UINT); | |
301 | -#if (_WIN32_WINNT >= 0x0600) | |
302 | -BOOL WINAPI SetConsoleScreenBufferInfoEx(HANDLE,PCONSOLE_SCREEN_BUFFER_INFOEX); | |
303 | -#endif | |
304 | -BOOL WINAPI SetConsoleScreenBufferSize(HANDLE,COORD); | |
305 | -BOOL WINAPI SetConsoleTextAttribute(HANDLE,WORD); | |
306 | -BOOL WINAPI SetConsoleTitleA(LPCSTR); | |
307 | -BOOL WINAPI SetConsoleTitleW(LPCWSTR); | |
308 | -BOOL WINAPI SetConsoleWindowInfo(HANDLE,BOOL,const SMALL_RECT*); | |
309 | -#if (_WIN32_WINNT >= 0x0600) | |
310 | -BOOL WINAPI SetCurrentConsoleFontEx(HANDLE,BOOL,PCONSOLE_FONT_INFOEX); | |
311 | -#endif | |
312 | -BOOL WINAPI WriteConsoleA(HANDLE,PCVOID,DWORD,PDWORD,PVOID); | |
313 | -BOOL WINAPI WriteConsoleW(HANDLE,PCVOID,DWORD,PDWORD,PVOID); | |
314 | -BOOL WINAPI WriteConsoleInputA(HANDLE,const INPUT_RECORD*,DWORD,PDWORD); | |
315 | -BOOL WINAPI WriteConsoleInputW(HANDLE,const INPUT_RECORD*,DWORD,PDWORD); | |
316 | -BOOL WINAPI WriteConsoleOutputA(HANDLE,const CHAR_INFO*,COORD,COORD,PSMALL_RECT); | |
317 | -BOOL WINAPI WriteConsoleOutputW(HANDLE,const CHAR_INFO*,COORD,COORD,PSMALL_RECT); | |
318 | -BOOL WINAPI WriteConsoleOutputAttribute(HANDLE,const WORD*,DWORD,COORD,PDWORD); | |
319 | -BOOL WINAPI WriteConsoleOutputCharacterA(HANDLE,LPCSTR,DWORD,COORD,PDWORD); | |
320 | -BOOL WINAPI WriteConsoleOutputCharacterW(HANDLE,LPCWSTR,DWORD,COORD,PDWORD); | |
321 | - | |
322 | -#ifdef UNICODE | |
323 | -#define AddConsoleAlias AddConsoleAliasW | |
324 | -#define FillConsoleOutputCharacter FillConsoleOutputCharacterW | |
325 | -#define GetConsoleAlias GetConsoleAliasW | |
326 | -#define GetConsoleAliases GetConsoleAliasesW | |
327 | -#define GetConsoleAliasExes GetConsoleAliasExesW | |
328 | -#define GetConsoleAliasesLength GetConsoleAliasesLengthW | |
329 | -#define GetConsoleAliasExesLength GetConsoleAliasExesLengthW | |
330 | -#define GetConsoleOriginalTitle GetConsoleOriginalTitleW | |
331 | -#define GetConsoleTitle GetConsoleTitleW | |
332 | -#define PeekConsoleInput PeekConsoleInputW | |
333 | -#define ReadConsole ReadConsoleW | |
334 | -#define ReadConsoleInput ReadConsoleInputW | |
335 | -#define ReadConsoleOutput ReadConsoleOutputW | |
336 | -#define ReadConsoleOutputCharacter ReadConsoleOutputCharacterW | |
337 | -#define ScrollConsoleScreenBuffer ScrollConsoleScreenBufferW | |
338 | -#define SetConsoleTitle SetConsoleTitleW | |
339 | -#define WriteConsole WriteConsoleW | |
340 | -#define WriteConsoleInput WriteConsoleInputW | |
341 | -#define WriteConsoleOutput WriteConsoleOutputW | |
342 | -#define WriteConsoleOutputCharacter WriteConsoleOutputCharacterW | |
343 | -#else | |
344 | -#define AddConsoleAlias AddConsoleAliasA | |
345 | -#define FillConsoleOutputCharacter FillConsoleOutputCharacterA | |
346 | -#define GetConsoleAlias GetConsoleAliasA | |
347 | -#define GetConsoleAliases GetConsoleAliasesA | |
348 | -#define GetConsoleAliasExes GetConsoleAliasExesA | |
349 | -#define GetConsoleAliasesLength GetConsoleAliasesLengthA | |
350 | -#define GetConsoleAliasExesLength GetConsoleAliasExesLengthA | |
351 | -#define GetConsoleOriginalTitle GetConsoleOriginalTitleA | |
352 | -#define GetConsoleTitle GetConsoleTitleA | |
353 | -#define PeekConsoleInput PeekConsoleInputA | |
354 | -#define ReadConsole ReadConsoleA | |
355 | -#define ReadConsoleInput ReadConsoleInputA | |
356 | -#define ReadConsoleOutput ReadConsoleOutputA | |
357 | -#define ReadConsoleOutputCharacter ReadConsoleOutputCharacterA | |
358 | -#define ScrollConsoleScreenBuffer ScrollConsoleScreenBufferA | |
359 | -#define SetConsoleTitle SetConsoleTitleA | |
360 | -#define WriteConsole WriteConsoleA | |
361 | -#define WriteConsoleInput WriteConsoleInputA | |
362 | -#define WriteConsoleOutput WriteConsoleOutputA | |
363 | -#define WriteConsoleOutputCharacter WriteConsoleOutputCharacterA | |
364 | -#endif | |
406 | +WINAPI BOOL GetConsoleHistoryInfo (PCONSOLE_HISTORY_INFO); | |
407 | + | |
408 | +#define GetConsoleOriginalTitle __AW_SUFFIXED__(GetConsoleOriginalTitle) | |
409 | +WINAPI DWORD GetConsoleOriginalTitleA (LPSTR, DWORD); | |
410 | +WINAPI DWORD GetConsoleOriginalTitleW (LPWSTR, DWORD); | |
411 | + | |
412 | +WINAPI BOOL GetConsoleScreenBufferInfoEx (HANDLE, PCONSOLE_SCREEN_BUFFER_INFOEX); | |
413 | +WINAPI BOOL GetCurrentConsoleFontEx (HANDLE, BOOL, PCONSOLE_FONT_INFOEX); | |
414 | +WINAPI BOOL SetConsoleHistoryInfo (PCONSOLE_HISTORY_INFO); | |
415 | +WINAPI BOOL SetConsoleScreenBufferInfoEx (HANDLE, PCONSOLE_SCREEN_BUFFER_INFOEX); | |
416 | +WINAPI BOOL SetCurrentConsoleFontEx (HANDLE, BOOL, PCONSOLE_FONT_INFOEX); | |
417 | + | |
418 | +#endif /* Vista and later */ | |
419 | +#endif /* WinXP and later */ | |
420 | +#endif /* Win2K and later */ | |
365 | 421 | |
366 | 422 | _END_C_DECLS |
367 | 423 | |
368 | -#endif | |
424 | +#endif /* !_WINCON_H: $RCSfile$: end of file */ |