8 #if (_WIN32_WINNT >= 0x0600) && !defined(NOGDI)
14 #pragma warning(disable:4820)
18 * Special PID for parent process for AttachConsole API
20 #if (_WIN32_WINNT >= 0x0501)
21 #define ATTACH_PARENT_PROCESS ((DWORD)-1)
25 * Console display modes
27 // These codes are answered by GetConsoleDisplayMode
28 #define CONSOLE_WINDOWED 0
29 #define CONSOLE_FULLSCREEN 1
30 #if (_WIN32_WINNT >= 0x0600)
31 #define CONSOLE_OVERSTRIKE 1
33 #define CONSOLE_FULLSCREEN_HARDWARE 2
35 // These codes should be given to SetConsoleDisplayMode
36 #define CONSOLE_FULLSCREEN_MODE 1
37 #define CONSOLE_WINDOWED_MODE 2
40 * Color attributes for text and screen background
42 #define FOREGROUND_BLUE 0x0001
43 #define FOREGROUND_GREEN 0x0002
44 #define FOREGROUND_RED 0x0004
45 #define FOREGROUND_INTENSITY 0x0008
46 #define BACKGROUND_BLUE 0x0010
47 #define BACKGROUND_GREEN 0x0020
48 #define BACKGROUND_RED 0x0040
49 #define BACKGROUND_INTENSITY 0x0080
51 #define COMMON_LVB_LEADING_BYTE 0x0100
52 #define COMMON_LVB_TRAILING_BYTE 0x0200
53 #define COMMON_LVB_GRID_HORIZONTAL 0x0400
54 #define COMMON_LVB_GRID_LVERTICAL 0x0800
55 #define COMMON_LVB_GRID_RVERTICAL 0x1000
56 #define COMMON_LVB_REVERSE_VIDEO 0x4000
57 #define COMMON_LVB_UNDERSCORE 0x8000
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/ */
66 * Control handler codes
68 #define CTRL_C_EVENT 0
69 #define CTRL_BREAK_EVENT 1
70 #define CTRL_CLOSE_EVENT 2
71 #define CTRL_LOGOFF_EVENT 5
72 #define CTRL_SHUTDOWN_EVENT 6
77 #define ENABLE_PROCESSED_INPUT 0x0001
78 #define ENABLE_LINE_INPUT 0x0002
79 #define ENABLE_ECHO_INPUT 0x0004
80 #define ENABLE_WINDOW_INPUT 0x0008
81 #define ENABLE_MOUSE_INPUT 0x0010
82 #define ENABLE_INSERT_MODE 0x0020
83 #define ENABLE_QUICK_EDIT_MODE 0x0040
84 #define ENABLE_EXTENDED_FLAGS 0x0080
85 #if (_WIN32_WINNT >= 0x0600)
86 #define ENABLE_AUTO_POSITION 0x0100
92 #define ENABLE_PROCESSED_OUTPUT 0x0001
93 #define ENABLE_WRAP_AT_EOL_OUTPUT 0x0002
96 * Console selection flags
98 #define CONSOLE_NO_SELECTION 0x0000
99 #define CONSOLE_SELECTION_IN_PROGRESS 0x0001
100 #define CONSOLE_SELECTION_NOT_EMPTY 0x0002
101 #define CONSOLE_MOUSE_SELECTION 0x0004
102 #define CONSOLE_MOUSE_DOWN 0x0008
105 * History duplicate flags
107 #if (_WIN32_WINNT >= 0x0600)
108 #define HISTORY_NO_DUP_FLAG 0x0001
114 #define CONSOLE_READ_KEEPEVENT 0x0001
115 #define CONSOLE_READ_CONTINUE 0x0002
120 #define KEY_EVENT 0x0001
121 #define MOUSE_EVENT 0x0002
122 #define WINDOW_BUFFER_SIZE_EVENT 0x0004
123 #define MENU_EVENT 0x0008
124 #define FOCUS_EVENT 0x0010
127 * ControlKeyState flags
129 #define RIGHT_ALT_PRESSED 0x0001
130 #define LEFT_ALT_PRESSED 0x0002
131 #define RIGHT_CTRL_PRESSED 0x0004
132 #define LEFT_CTRL_PRESSED 0x0008
133 #define SHIFT_PRESSED 0x0010
134 #define NUMLOCK_ON 0x0020
135 #define SCROLLLOCK_ON 0x0040
136 #define CAPSLOCK_ON 0x0080
137 #define ENHANCED_KEY 0x0100
142 #define FROM_LEFT_1ST_BUTTON_PRESSED 0x0001
143 #define RIGHTMOST_BUTTON_PRESSED 0x0002
144 #define FROM_LEFT_2ND_BUTTON_PRESSED 0x0004
145 #define FROM_LEFT_3RD_BUTTON_PRESSED 0x0008
146 #define FROM_LEFT_4TH_BUTTON_PRESSED 0x0010
151 #define MOUSE_MOVED 0x0001
152 #define DOUBLE_CLICK 0x0002
153 #define MOUSE_WHEELED 0x0004
154 #if (_WIN32_WINNT >= 0x0600)
155 #define MOUSE_HWHEELED 0x0008
158 typedef struct _CONSOLE_READCONSOLE_CONTROL
{
161 ULONG dwCtrlWakeupMask
;
162 ULONG dwControlKeyState
;
163 } CONSOLE_READCONSOLE_CONTROL
, *PCONSOLE_READCONSOLE_CONTROL
;
165 typedef struct _CHAR_INFO
{
171 } CHAR_INFO
,*PCHAR_INFO
;
173 typedef struct _SMALL_RECT
{
178 } SMALL_RECT
,*PSMALL_RECT
;
180 typedef struct _CONSOLE_CURSOR_INFO
{
183 } CONSOLE_CURSOR_INFO
,*PCONSOLE_CURSOR_INFO
;
185 typedef struct _COORD
{
190 typedef struct _CONSOLE_SELECTION_INFO
{
192 COORD dwSelectionAnchor
;
193 SMALL_RECT srSelection
;
194 } CONSOLE_SELECTION_INFO
, *PCONSOLE_SELECTION_INFO
;
196 typedef struct _CONSOLE_FONT_INFO
{
199 } CONSOLE_FONT_INFO
, *PCONSOLE_FONT_INFO
;
201 typedef struct _CONSOLE_SCREEN_BUFFER_INFO
{
203 COORD dwCursorPosition
;
206 COORD dwMaximumWindowSize
;
207 } CONSOLE_SCREEN_BUFFER_INFO
,*PCONSOLE_SCREEN_BUFFER_INFO
;
209 /* Undocumented, see http://blog.airesoft.co.uk/2012/10/things-ms-can-do-that-they-dont-tell-you-about-console-graphics/ */
210 #if defined(_WINGDI_) && !defined(NOGDI)
211 typedef struct _CONSOLE_GRAPHICS_BUFFER_INFO
{
212 DWORD dwBitMapInfoLength
;
213 LPBITMAPINFO lpBitMapInfo
;
214 DWORD dwUsage
; // DIB_PAL_COLORS or DIB_RGB_COLORS
217 } CONSOLE_GRAPHICS_BUFFER_INFO
, *PCONSOLE_GRAPHICS_BUFFER_INFO
;
220 typedef BOOL(CALLBACK
*PHANDLER_ROUTINE
)(_In_ DWORD
);
222 typedef struct _KEY_EVENT_RECORD
{
225 WORD wVirtualKeyCode
;
226 WORD wVirtualScanCode
;
231 DWORD dwControlKeyState
;
234 /* gcc's alignment is not what win32 expects */
239 typedef struct _MOUSE_EVENT_RECORD
{
240 COORD dwMousePosition
;
242 DWORD dwControlKeyState
;
244 } MOUSE_EVENT_RECORD
;
246 typedef struct _WINDOW_BUFFER_SIZE_RECORD
{ COORD dwSize
; } WINDOW_BUFFER_SIZE_RECORD
;
247 typedef struct _MENU_EVENT_RECORD
{ UINT dwCommandId
; } MENU_EVENT_RECORD
,*PMENU_EVENT_RECORD
;
248 typedef struct _FOCUS_EVENT_RECORD
{ BOOL bSetFocus
; } FOCUS_EVENT_RECORD
;
250 typedef struct _INPUT_RECORD
{
253 KEY_EVENT_RECORD KeyEvent
;
254 MOUSE_EVENT_RECORD MouseEvent
;
255 WINDOW_BUFFER_SIZE_RECORD WindowBufferSizeEvent
;
256 MENU_EVENT_RECORD MenuEvent
;
257 FOCUS_EVENT_RECORD FocusEvent
;
259 } INPUT_RECORD
,*PINPUT_RECORD
;
261 #if (_WIN32_WINNT >= 0x0600)
262 typedef struct _CONSOLE_HISTORY_INFO
{
264 UINT HistoryBufferSize
;
265 UINT NumberOfHistoryBuffers
;
267 } CONSOLE_HISTORY_INFO
, *PCONSOLE_HISTORY_INFO
;
269 typedef struct _CONSOLE_SCREEN_BUFFER_INFOEX
{
272 COORD dwCursorPosition
;
275 COORD dwMaximumWindowSize
;
276 WORD wPopupAttributes
;
277 COLORREF ColorTable
[16];
278 } CONSOLE_SCREEN_BUFFER_INFOEX
, *PCONSOLE_SCREEN_BUFFER_INFOEX
;
281 typedef struct _CONSOLE_FONT_INFOEX
{
287 WCHAR FaceName
[LF_FACESIZE
];
288 } CONSOLE_FONT_INFOEX
, *PCONSOLE_FONT_INFOEX
;
292 BOOL WINAPI
AllocConsole(VOID
);
294 #if (_WIN32_WINNT >= 0x0501)
295 BOOL WINAPI
AttachConsole(_In_ DWORD
);
297 BOOL WINAPI
AddConsoleAliasA(_In_ LPCSTR
, _In_ LPCSTR
, _In_ LPCSTR
);
298 BOOL WINAPI
AddConsoleAliasW(_In_ LPCWSTR
, _In_ LPCWSTR
, _In_ LPCWSTR
);
304 _Out_writes_(TargetBufferLength
) LPSTR TargetBuffer
,
305 _In_ DWORD TargetBufferLength
,
312 _Out_writes_(TargetBufferLength
) LPWSTR TargetBuffer
,
313 _In_ DWORD TargetBufferLength
,
314 _In_ LPWSTR ExeName
);
319 _Out_writes_(AliasBufferLength
) LPSTR AliasBuffer
,
320 _In_ DWORD AliasBufferLength
,
326 _Out_writes_(AliasBufferLength
) LPWSTR AliasBuffer
,
327 _In_ DWORD AliasBufferLength
,
328 _In_ LPWSTR ExeName
);
330 DWORD WINAPI
GetConsoleAliasesLengthA(_In_ LPSTR ExeName
);
331 DWORD WINAPI
GetConsoleAliasesLengthW(_In_ LPWSTR ExeName
);
335 GetConsoleAliasExesA(
336 _Out_writes_(ExeNameBufferLength
) LPSTR ExeNameBuffer
,
337 _In_ DWORD ExeNameBufferLength
);
341 GetConsoleAliasExesW(
342 _Out_writes_(ExeNameBufferLength
) LPWSTR ExeNameBuffer
,
343 _In_ DWORD ExeNameBufferLength
);
345 DWORD WINAPI
GetConsoleAliasExesLengthA(VOID
);
346 DWORD WINAPI
GetConsoleAliasExesLengthW(VOID
);
351 CreateConsoleScreenBuffer(
354 _In_opt_ CONST SECURITY_ATTRIBUTES
*,
360 FillConsoleOutputAttribute(
369 FillConsoleOutputCharacterA(
378 FillConsoleOutputCharacterW(
385 BOOL WINAPI
FlushConsoleInputBuffer(_In_ HANDLE
);
386 BOOL WINAPI
FreeConsole(VOID
);
387 BOOL WINAPI
GenerateConsoleCtrlEvent(_In_ DWORD
, _In_ DWORD
);
388 UINT WINAPI
GetConsoleCP(VOID
);
389 BOOL WINAPI
GetConsoleCursorInfo(_In_ HANDLE
, _Out_ PCONSOLE_CURSOR_INFO
);
390 BOOL WINAPI
GetConsoleMode(_In_ HANDLE
, _Out_ PDWORD
);
391 UINT WINAPI
GetConsoleOutputCP(VOID
);
395 GetConsoleScreenBufferInfo(
397 _Out_ PCONSOLE_SCREEN_BUFFER_INFO
);
399 /* Undocumented, see http://blog.airesoft.co.uk/2012/10/things-ms-can-do-that-they-dont-tell-you-about-console-graphics/ */
400 BOOL WINAPI
InvalidateConsoleDIBits(_In_ HANDLE
, _In_ PSMALL_RECT
);
405 _Out_writes_(nSize
) LPSTR lpConsoleTitle
,
411 _Out_writes_(nSize
) LPWSTR lpConsoleTitle
,
417 _In_ HANDLE hConsoleOutput
,
422 GetCurrentConsoleFont(
423 _In_ HANDLE hConsoleOutput
,
424 _In_ BOOL bMaximumWindow
,
425 _Out_ PCONSOLE_FONT_INFO lpConsoleCurrentFont
);
427 #if (_WIN32_WINNT >= 0x0500)
429 HWND WINAPI
GetConsoleWindow(VOID
);
430 BOOL APIENTRY
GetConsoleDisplayMode(_Out_ LPDWORD lpModeFlags
);
434 SetConsoleDisplayMode(
435 _In_ HANDLE hConsoleOutput
,
437 _Out_opt_ PCOORD lpNewScreenBufferDimensions
);
441 COORD WINAPI
GetLargestConsoleWindowSize(_In_ HANDLE
);
442 BOOL WINAPI
GetNumberOfConsoleInputEvents(_In_ HANDLE
, _Out_ PDWORD
);
443 BOOL WINAPI
GetNumberOfConsoleMouseButtons(_Out_ PDWORD
);
445 _Success_(return != 0)
447 WINAPI
PeekConsoleInputA(
448 _In_ HANDLE hConsoleInput
,
449 _Out_writes_(nLength
) PINPUT_RECORD lpBuffer
,
451 _Out_ LPDWORD lpNumberOfEventsRead
);
453 _Success_(return != 0)
457 _In_ HANDLE hConsoleInput
,
458 _Out_writes_(nLength
) PINPUT_RECORD lpBuffer
,
460 _Out_ LPDWORD lpNumberOfEventsRead
);
462 _Success_(return != 0)
466 _In_ HANDLE hConsoleInput
,
467 _Out_writes_bytes_to_(nNumberOfCharsToRead
* sizeof(CHAR
), *lpNumberOfCharsRead
* sizeof(CHAR
)) LPVOID lpBuffer
,
468 _In_ DWORD nNumberOfCharsToRead
,
469 _Out_
_Deref_out_range_(<= , nNumberOfCharsToRead
) LPDWORD lpNumberOfCharsRead
,
470 _In_opt_ PCONSOLE_READCONSOLE_CONTROL pInputControl
);
472 _Success_(return != 0)
476 _In_ HANDLE hConsoleInput
,
477 _Out_writes_bytes_to_(nNumberOfCharsToRead
* sizeof(WCHAR
), *lpNumberOfCharsRead
* sizeof(WCHAR
)) LPVOID lpBuffer
,
478 _In_ DWORD nNumberOfCharsToRead
,
479 _Out_
_Deref_out_range_(<= , nNumberOfCharsToRead
) LPDWORD lpNumberOfCharsRead
,
480 _In_opt_ PCONSOLE_READCONSOLE_CONTROL pInputControl
);
482 _Success_(return != 0)
486 _In_ HANDLE hConsoleInput
,
487 _Out_writes_to_(nLength
, *lpNumberOfEventsRead
) PINPUT_RECORD lpBuffer
,
489 _Out_
_Deref_out_range_(<= , nLength
) LPDWORD lpNumberOfEventsRead
);
491 _Success_(return != 0)
495 _In_ HANDLE hConsoleInput
,
496 _Out_writes_to_(nLength
, *lpNumberOfEventsRead
) PINPUT_RECORD lpBuffer
,
498 _Out_
_Deref_out_range_(<= , nLength
) LPDWORD lpNumberOfEventsRead
);
500 _Success_(return != 0)
504 _In_ HANDLE hConsoleInput
,
505 _Out_writes_to_(nLength
, *lpNumberOfEventsRead
) PINPUT_RECORD lpBuffer
,
507 _Out_
_Deref_out_range_(<= , nLength
) LPDWORD lpNumberOfEventsRead
,
510 _Success_(return != 0)
514 _In_ HANDLE hConsoleInput
,
515 _Out_writes_to_(nLength
, *lpNumberOfEventsRead
) PINPUT_RECORD lpBuffer
,
517 _Out_
_Deref_out_range_(<= , nLength
) LPDWORD lpNumberOfEventsRead
,
522 ReadConsoleOutputAttribute(
523 _In_ HANDLE hConsoleOutput
,
524 _Out_writes_(nLength
) LPWORD lpAttribute
,
526 _In_ COORD dwReadCoord
,
527 _Out_ LPDWORD lpNumberOfAttrsRead
);
531 ReadConsoleOutputCharacterA(
532 _In_ HANDLE hConsoleOutput
,
533 _Out_writes_(nLength
) LPSTR lpCharacter
,
535 _In_ COORD dwReadCoord
,
536 _Out_ LPDWORD lpNumberOfCharsRead
);
540 ReadConsoleOutputCharacterW(
541 _In_ HANDLE hConsoleOutput
,
542 _Out_writes_(nLength
) LPWSTR lpCharacter
,
544 _In_ COORD dwReadCoord
,
545 _Out_ LPDWORD lpNumberOfCharsRead
);
550 _In_ HANDLE hConsoleOutput
,
551 _Out_writes_(dwBufferSize
.X
* dwBufferSize
.Y
) PCHAR_INFO lpBuffer
,
552 _In_ COORD dwBufferSize
,
553 _In_ COORD dwBufferCoord
,
554 _Inout_ PSMALL_RECT lpReadRegion
);
559 _In_ HANDLE hConsoleOutput
,
560 _Out_writes_(dwBufferSize
.X
* dwBufferSize
.Y
) PCHAR_INFO lpBuffer
,
561 _In_ COORD dwBufferSize
,
562 _In_ COORD dwBufferCoord
,
563 _Inout_ PSMALL_RECT lpReadRegion
);
567 ScrollConsoleScreenBufferA(
569 _In_
const SMALL_RECT
*,
570 _In_opt_
const SMALL_RECT
*,
572 _In_
const CHAR_INFO
*);
576 ScrollConsoleScreenBufferW(
578 _In_
const SMALL_RECT
*,
579 _In_opt_
const SMALL_RECT
*,
581 _In_
const CHAR_INFO
*);
583 BOOL WINAPI
SetConsoleActiveScreenBuffer(_In_ HANDLE
);
584 BOOL WINAPI
SetConsoleCP(_In_ UINT
);
585 BOOL WINAPI
SetConsoleCtrlHandler(_In_opt_ PHANDLER_ROUTINE
, _In_ BOOL
);
586 BOOL WINAPI
SetConsoleCursorInfo(_In_ HANDLE
, _In_
const CONSOLE_CURSOR_INFO
*);
587 BOOL WINAPI
SetConsoleCursorPosition(_In_ HANDLE
, _In_ COORD
);
588 BOOL WINAPI
SetConsoleMode(_In_ HANDLE
, _In_ DWORD
);
589 BOOL WINAPI
SetConsoleOutputCP(_In_ UINT
);
590 BOOL WINAPI
SetConsoleScreenBufferSize(_In_ HANDLE
, _In_ COORD
);
591 BOOL WINAPI
SetConsoleTextAttribute(_In_ HANDLE
, _In_ WORD
);
592 BOOL WINAPI
SetConsoleTitleA(_In_ LPCSTR
);
593 BOOL WINAPI
SetConsoleTitleW(_In_ LPCWSTR
);
597 SetConsoleWindowInfo(
600 _In_
const SMALL_RECT
*);
602 /* Undocumented, see http://undoc.airesoft.co.uk/kernel32.dll/ConsoleMenuControl.php */
603 HMENU WINAPI
ConsoleMenuControl(_In_ HANDLE
, _In_ DWORD
, _In_ DWORD
);
605 BOOL WINAPI
SetConsoleMenuClose(_In_ BOOL
);
606 /* Undocumented, see http://undoc.airesoft.co.uk/kernel32.dll/SetConsoleCursor.php */
607 BOOL WINAPI
SetConsoleCursor(_In_ HANDLE
, _In_ HCURSOR
);
608 /* Undocumented, see http://undoc.airesoft.co.uk/kernel32.dll/ShowConsoleCursor.php */
609 INT WINAPI
ShowConsoleCursor(_In_ HANDLE
, _In_ BOOL
);
610 /* Undocumented, see http://comments.gmane.org/gmane.comp.lang.harbour.devel/27844 */
611 BOOL WINAPI
SetConsolePalette(_In_ HANDLE
, _In_ HPALETTE
, _In_ UINT
);
616 _In_ HANDLE hConsoleOutput
,
617 _In_reads_(nNumberOfCharsToWrite
) CONST VOID
*lpBuffer
,
618 _In_ DWORD nNumberOfCharsToWrite
,
619 _Out_opt_ LPDWORD lpNumberOfCharsWritten
,
620 _Reserved_ LPVOID lpReserved
);
625 _In_ HANDLE hConsoleOutput
,
626 _In_reads_(nNumberOfCharsToWrite
) CONST VOID
*lpBuffer
,
627 _In_ DWORD nNumberOfCharsToWrite
,
628 _Out_opt_ LPDWORD lpNumberOfCharsWritten
,
629 _Reserved_ LPVOID lpReserved
);
634 _In_ HANDLE hConsoleInput
,
635 _In_reads_(nLength
) CONST INPUT_RECORD
*lpBuffer
,
637 _Out_ LPDWORD lpNumberOfEventsWritten
);
642 _In_ HANDLE hConsoleInput
,
643 _In_reads_(nLength
) CONST INPUT_RECORD
*lpBuffer
,
645 _Out_ LPDWORD lpNumberOfEventsWritten
);
649 WriteConsoleInputVDMA(
650 _In_ HANDLE hConsoleInput
,
651 _In_reads_(nLength
) CONST INPUT_RECORD
*lpBuffer
,
653 _Out_ LPDWORD lpNumberOfEventsWritten
);
657 WriteConsoleInputVDMW(
658 _In_ HANDLE hConsoleInput
,
659 _In_reads_(nLength
) CONST INPUT_RECORD
*lpBuffer
,
661 _Out_ LPDWORD lpNumberOfEventsWritten
);
666 _In_ HANDLE hConsoleOutput
,
667 _In_reads_(dwBufferSize
.X
* dwBufferSize
.Y
) CONST CHAR_INFO
*lpBuffer
,
668 _In_ COORD dwBufferSize
,
669 _In_ COORD dwBufferCoord
,
670 _Inout_ PSMALL_RECT lpWriteRegion
);
675 _In_ HANDLE hConsoleOutput
,
676 _In_reads_(dwBufferSize
.X
* dwBufferSize
.Y
) CONST CHAR_INFO
*lpBuffer
,
677 _In_ COORD dwBufferSize
,
678 _In_ COORD dwBufferCoord
,
679 _Inout_ PSMALL_RECT lpWriteRegion
);
683 WriteConsoleOutputAttribute(
684 _In_ HANDLE hConsoleOutput
,
685 _In_reads_(nLength
) CONST WORD
*lpAttribute
,
687 _In_ COORD dwWriteCoord
,
688 _Out_ LPDWORD lpNumberOfAttrsWritten
);
692 WriteConsoleOutputCharacterA(
693 _In_ HANDLE hConsoleOutput
,
694 _In_reads_(nLength
) LPCSTR lpCharacter
,
696 _In_ COORD dwWriteCoord
,
697 _Out_ LPDWORD lpNumberOfCharsWritten
);
701 WriteConsoleOutputCharacterW(
702 _In_ HANDLE hConsoleOutput
,
703 _In_reads_(nLength
) LPCWSTR lpCharacter
,
705 _In_ COORD dwWriteCoord
,
706 _Out_ LPDWORD lpNumberOfCharsWritten
);
710 #define AddConsoleAlias AddConsoleAliasW
711 #define GetConsoleAlias GetConsoleAliasW
712 #define GetConsoleAliases GetConsoleAliasesW
713 #define GetConsoleAliasesLength GetConsoleAliasesLengthW
714 #define GetConsoleAliasExes GetConsoleAliasExesW
715 #define GetConsoleAliasExesLength GetConsoleAliasExesLengthW
716 #define GetConsoleTitle GetConsoleTitleW
717 #define PeekConsoleInput PeekConsoleInputW
718 #define ReadConsole ReadConsoleW
719 #define ReadConsoleInput ReadConsoleInputW
720 #define ReadConsoleInputEx ReadConsoleInputExW
721 #define ReadConsoleOutput ReadConsoleOutputW
722 #define ReadConsoleOutputCharacter ReadConsoleOutputCharacterW
723 #define ScrollConsoleScreenBuffer ScrollConsoleScreenBufferW
724 #define SetConsoleTitle SetConsoleTitleW
725 #define WriteConsole WriteConsoleW
726 #define WriteConsoleInput WriteConsoleInputW
727 #define WriteConsoleInputVDM WriteConsoleInputVDMW
728 #define WriteConsoleOutput WriteConsoleOutputW
729 #define FillConsoleOutputCharacter FillConsoleOutputCharacterW
730 #define WriteConsoleOutputCharacter WriteConsoleOutputCharacterW
732 #define AddConsoleAlias AddConsoleAliasA
733 #define GetConsoleAlias GetConsoleAliasA
734 #define GetConsoleAliases GetConsoleAliasesA
735 #define GetConsoleAliasesLength GetConsoleAliasesLengthA
736 #define GetConsoleAliasExes GetConsoleAliasExesA
737 #define GetConsoleAliasExesLength GetConsoleAliasExesLengthA
738 #define GetConsoleTitle GetConsoleTitleA
739 #define PeekConsoleInput PeekConsoleInputA
740 #define ReadConsole ReadConsoleA
741 #define ReadConsoleInput ReadConsoleInputA
742 #define ReadConsoleInputEx ReadConsoleInputExA
743 #define ReadConsoleOutput ReadConsoleOutputA
744 #define ReadConsoleOutputCharacter ReadConsoleOutputCharacterA
745 #define ScrollConsoleScreenBuffer ScrollConsoleScreenBufferA
746 #define SetConsoleTitle SetConsoleTitleA
747 #define WriteConsole WriteConsoleA
748 #define WriteConsoleInput WriteConsoleInputA
749 #define WriteConsoleInputVDM WriteConsoleInputVDMA
750 #define WriteConsoleOutput WriteConsoleOutputA
751 #define FillConsoleOutputCharacter FillConsoleOutputCharacterA
752 #define WriteConsoleOutputCharacter WriteConsoleOutputCharacterA
763 #endif /* _WINCON_H */