2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS Console Server DLL
4 * FILE: include/reactos/subsys/win/conmsg.h
5 * PURPOSE: Public definitions for communication
6 * between Console API Clients and Servers
7 * PROGRAMMERS: Hermes Belusca-Maito (hermes.belusca@sfr.fr)
15 #define CONSRV_SERVERDLL_INDEX 2
16 #define CONSRV_FIRST_API_NUMBER 512
18 // Windows Server 2003 table from http://j00ru.vexillium.org/csrss_list/api_list.html#Windows_2k3
19 typedef enum _CONSRV_API_NUMBER
21 ConsolepOpenConsole
= CONSRV_FIRST_API_NUMBER
,
22 ConsolepGetConsoleInput
,
23 ConsolepWriteConsoleInput
,
24 ConsolepReadConsoleOutput
,
25 ConsolepWriteConsoleOutput
,
26 ConsolepReadConsoleOutputString
,
27 ConsolepWriteConsoleOutputString
,
28 ConsolepFillConsoleOutput
,
30 ConsolepGetNumberOfFonts
,
31 ConsolepGetNumberOfInputEvents
,
32 ConsolepGetScreenBufferInfo
,
33 ConsolepGetCursorInfo
,
37 ConsolepGetCurrentFont
,
39 ConsolepSetActiveScreenBuffer
,
40 ConsolepFlushInputBuffer
,
41 ConsolepGetLargestWindowSize
,
42 ConsolepSetScreenBufferSize
,
43 ConsolepSetCursorPosition
,
44 ConsolepSetCursorInfo
,
45 ConsolepSetWindowInfo
,
46 ConsolepScrollScreenBuffer
,
47 ConsolepSetTextAttribute
,
52 ConsolepDuplicateHandle
,
53 ConsolepGetHandleInformation
,
54 ConsolepSetHandleInformation
,
56 ConsolepVerifyIoHandle
,
57 ConsolepAlloc
, // Not present in Win7
58 ConsolepFree
, // Not present in Win7
61 ConsolepCreateScreenBuffer
,
62 ConsolepInvalidateBitMapRect
,
68 ConsolepSetDisplayMode
,
70 ConsolepGetHardwareState
,
71 ConsolepSetHardwareState
,
72 ConsolepGetDisplayMode
,
75 ConsolepGetAliasesLength
,
76 ConsolepGetAliasExesLength
,
79 ConsolepExpungeCommandHistory
,
80 ConsolepSetNumberOfCommands
,
81 ConsolepGetCommandHistoryLength
,
82 ConsolepGetCommandHistory
,
83 ConsolepSetCommandHistoryMode
, // Not present in Vista+
86 ConsolepSetKeyShortcuts
,
88 ConsolepNotifyLastClose
,
89 ConsolepGenerateCtrlEvent
,
90 ConsolepGetKeyboardLayoutName
,
91 ConsolepGetConsoleWindow
,
94 ConsolepSetCursorMode
,
95 ConsolepGetCursorMode
,
97 ConsolepSetOS2OemFormat
,
100 ConsolepRegisterConsoleIME
, // Not present in Win7
101 ConsolepUnregisterConsoleIME
, // Not present in Win7
102 // ConsolepQueryConsoleIME, // Added only in Vista and Win2k8, not present in Win7
104 ConsolepAttach
, // Not present in Win7
105 ConsolepGetSelectionInfo
,
106 ConsolepGetProcessList
,
108 ConsolepGetHistory
, // Added in Vista+
109 ConsolepSetHistory
, // Added in Vista+
110 // ConsolepSetCurrentFont, // Added in Vista+
111 // ConsolepSetScreenBufferInfo, // Added in Vista+
112 // ConsolepClientConnect, // Added in Win7
115 } CONSRV_API_NUMBER
, *PCONSRV_API_NUMBER
;
118 // See http://msdn.microsoft.com/en-us/library/windows/desktop/bb773359(v=vs.85).aspx
120 typedef struct _CONSOLE_PROPERTIES
123 WORD wPopupFillAttribute
;
126 // Not on MSDN, but show up in binary
131 COORD dwScreenBufferSize
;
133 COORD dwWindowOrigin
;
135 DWORD nInputBufferSize
;
139 WCHAR FaceName
[LF_FACESIZE
];
145 UINT uHistoryBufferSize
;
146 UINT uNumberOfHistoryBuffers
;
148 COLORREF ColorTable
[16];
150 //NT_FE_CONSOLE_PROPS
152 } CONSOLE_PROPERTIES
;
155 // To minimize code changes, some fields were put here even though they really only belong in
156 // CONSRV_API_CONNECTINFO. Do not change the ordering however, as it's required for Windows
159 typedef struct _CONSOLE_START_INFO
165 DWORD dwStartupFlags
;
168 BOOLEAN ConsoleNeeded
; // Used for GUI apps only.
169 LPTHREAD_START_ROUTINE CtrlDispatcher
;
170 LPTHREAD_START_ROUTINE ImeDispatcher
;
171 LPTHREAD_START_ROUTINE PropDispatcher
;
173 WCHAR ConsoleTitle
[MAX_PATH
+ 1]; // Console title or full path to the startup shortcut
177 WCHAR AppPath
[128]; // Full path of the launched app
178 ULONG IconPathLength
;
179 WCHAR IconPath
[MAX_PATH
+ 1]; // Path to the file containing the icon
180 } CONSOLE_START_INFO
, *PCONSOLE_START_INFO
;
182 typedef struct _CONSRV_API_CONNECTINFO
184 HANDLE ConsoleHandle
;
185 HANDLE InputWaitHandle
;
191 /* Adapted from CONSOLE_ALLOCCONSOLE */
192 CONSOLE_START_INFO ConsoleStartInfo
;
193 } CONSRV_API_CONNECTINFO
, *PCONSRV_API_CONNECTINFO
;
196 C_ASSERT(sizeof(CONSRV_API_CONNECTINFO
) == 0x638);
201 HANDLE ConsoleHandle
;
203 PDWORD ProcessIdsList
;
204 } CONSOLE_GETPROCESSLIST
, *PCONSOLE_GETPROCESSLIST
;
208 HANDLE ConsoleHandle
;
210 DWORD ProcessGroupId
;
211 } CONSOLE_GENERATECTRLEVENT
, *PCONSOLE_GENERATECTRLEVENT
;
215 HANDLE ConsoleHandle
;
216 } CONSOLE_NOTIFYLASTCLOSE
, *PCONSOLE_NOTIFYLASTCLOSE
;
222 HANDLE ConsoleHandle
;
225 CHAR StaticBuffer
[80];
226 PVOID Buffer
; // BufPtr
229 // On Windows, the client never uses this member
232 BOOLEAN UsingStaticBuffer
;
235 // On Windows, the client never uses this member
237 } CONSOLE_WRITECONSOLE
, *PCONSOLE_WRITECONSOLE
;
241 HANDLE ConsoleHandle
;
246 CHAR StaticBuffer
[80];
247 PVOID Buffer
; // BufPtr
250 ULONG CaptureBufferSize
;
252 ULONG InitialNumBytes
;
253 ULONG CtrlWakeupMask
;
254 ULONG ControlKeyState
;
256 } CONSOLE_READCONSOLE
, *PCONSOLE_READCONSOLE
;
260 PCONSOLE_START_INFO ConsoleStartInfo
;
262 HANDLE ConsoleHandle
;
266 HANDLE InputWaitHandle
;
267 LPTHREAD_START_ROUTINE CtrlDispatcher
;
268 LPTHREAD_START_ROUTINE PropDispatcher
;
269 } CONSOLE_ALLOCCONSOLE
, *PCONSOLE_ALLOCCONSOLE
;
273 DWORD ProcessId
; // If ProcessId == ATTACH_PARENT_PROCESS == -1, then attach the current process to its parent process console.
274 HANDLE ConsoleHandle
;
278 HANDLE InputWaitHandle
;
279 LPTHREAD_START_ROUTINE CtrlDispatcher
;
280 LPTHREAD_START_ROUTINE PropDispatcher
;
281 } CONSOLE_ATTACHCONSOLE
, *PCONSOLE_ATTACHCONSOLE
;
285 HANDLE ConsoleHandle
;
286 } CONSOLE_FREECONSOLE
, *PCONSOLE_FREECONSOLE
;
290 HANDLE ConsoleHandle
;
292 COORD ScreenBufferSize
;
293 COORD CursorPosition
;
297 COORD MaximumViewSize
;
298 } CONSOLE_GETSCREENBUFFERINFO
, *PCONSOLE_GETSCREENBUFFERINFO
;
302 HANDLE ConsoleHandle
;
305 } CONSOLE_SETCURSORPOSITION
, *PCONSOLE_SETCURSORPOSITION
;
309 HANDLE ConsoleHandle
;
313 } CONSOLE_SHOWCURSOR
, *PCONSOLE_SHOWCURSOR
;
317 HANDLE ConsoleHandle
;
319 HCURSOR CursorHandle
;
320 } CONSOLE_SETCURSOR
, *PCONSOLE_SETCURSOR
;
324 HANDLE ConsoleHandle
;
326 CONSOLE_CURSOR_INFO Info
;
331 } CONSOLE_GETSETCURSORINFO
, *PCONSOLE_GETSETCURSORINFO
;
335 HANDLE ConsoleHandle
;
337 } CONSOLE_GETMOUSEINFO
, *PCONSOLE_GETMOUSEINFO
;
341 HANDLE ConsoleHandle
;
344 } CONSOLE_SETTEXTATTRIB
, *PCONSOLE_SETTEXTATTRIB
;
348 HANDLE ConsoleHandle
;
351 } CONSOLE_GETSETCONSOLEMODE
, *PCONSOLE_GETSETCONSOLEMODE
;
355 HANDLE ConsoleHandle
;
356 DWORD DisplayMode
; // ModeFlags
357 } CONSOLE_GETDISPLAYMODE
, *PCONSOLE_GETDISPLAYMODE
;
361 HANDLE ConsoleHandle
;
363 DWORD DisplayMode
; // ModeFlags
366 } CONSOLE_SETDISPLAYMODE
, *PCONSOLE_SETDISPLAYMODE
;
369 * Console hardware states.
371 #define CONSOLE_HARDWARE_STATE_GDI_MANAGED 0
372 #define CONSOLE_HARDWARE_STATE_DIRECT 1
376 HANDLE ConsoleHandle
;
380 } CONSOLE_GETSETHWSTATE
, *PCONSOLE_GETSETHWSTATE
;
386 HANDLE ConsoleHandle
;
390 /* Type of the screen buffer: CONSOLE_TEXTMODE_BUFFER or CONSOLE_GRAPHICS_BUFFER */
391 DWORD ScreenBufferType
;
393 * This structure holds the initialization information
394 * for graphics screen buffers.
396 CONSOLE_GRAPHICS_BUFFER_INFO GraphicsBufferInfo
;
399 HANDLE OutputHandle
; /* Handle to newly created screen buffer */
400 } CONSOLE_CREATESCREENBUFFER
, *PCONSOLE_CREATESCREENBUFFER
;
404 HANDLE ConsoleHandle
;
405 HANDLE OutputHandle
; /* Handle to screen buffer to switch to */
406 } CONSOLE_SETACTIVESCREENBUFFER
, *PCONSOLE_SETACTIVESCREENBUFFER
;
410 HANDLE ConsoleHandle
;
413 } CONSOLE_INVALIDATEDIBITS
, *PCONSOLE_INVALIDATEDIBITS
;
417 HANDLE ConsoleHandle
;
419 HPALETTE PaletteHandle
;
421 } CONSOLE_SETPALETTE
, *PCONSOLE_SETPALETTE
;
425 HANDLE ConsoleHandle
;
429 } CONSOLE_GETSETCONSOLETITLE
, *PCONSOLE_GETSETCONSOLETITLE
;
433 HANDLE ConsoleHandle
;
435 } CONSOLE_FLUSHINPUTBUFFER
, *PCONSOLE_FLUSHINPUTBUFFER
;
439 HANDLE ConsoleHandle
;
441 SMALL_RECT ScrollRectangle
;
442 SMALL_RECT ClipRectangle
;
443 BOOL UseClipRectangle
;
444 COORD DestinationOrigin
;
447 } CONSOLE_SCROLLSCREENBUFFER
, *PCONSOLE_SCROLLSCREENBUFFER
;
451 * An attribute or a character are instances of the same entity, namely
452 * a "code" (what would be called an (ANSI) escape sequence). Therefore
453 * encode them inside the same structure.
455 typedef enum _CODE_TYPE
459 CODE_ATTRIBUTE
= 0x03
462 typedef union _CODE_ELEMENT
471 HANDLE ConsoleHandle
;
476 CHAR CodeStaticBuffer
[80]; // == 40 * sizeof(CODE_ELEMENT)
477 PVOID pCode
; // Either a pointer to a character or to an attribute.
482 // PWCHAR UnicodeChar;
484 // } pCode; // Either a pointer to a character or to an attribute.
487 } CONSOLE_READOUTPUTCODE
, *PCONSOLE_READOUTPUTCODE
,
488 CONSOLE_WRITEOUTPUTCODE
, *PCONSOLE_WRITEOUTPUTCODE
;
492 HANDLE ConsoleHandle
;
497 CODE_ELEMENT Code
; // Either a character or an attribute.
500 } CONSOLE_FILLOUTPUTCODE
, *PCONSOLE_FILLOUTPUTCODE
;
504 HANDLE ConsoleHandle
;
506 INPUT_RECORD RecordStaticBuffer
[5];
507 PINPUT_RECORD RecordBufPtr
;
511 } CONSOLE_GETINPUT
, *PCONSOLE_GETINPUT
;
515 HANDLE ConsoleHandle
;
517 INPUT_RECORD RecordStaticBuffer
[5];
518 PINPUT_RECORD RecordBufPtr
;
522 } CONSOLE_WRITEINPUT
, *PCONSOLE_WRITEINPUT
;
526 HANDLE ConsoleHandle
;
529 CHAR_INFO StaticBuffer
;
532 SMALL_RECT ReadRegion
;
534 } CONSOLE_READOUTPUT
, *PCONSOLE_READOUTPUT
;
538 HANDLE ConsoleHandle
;
541 CHAR_INFO StaticBuffer
;
544 SMALL_RECT WriteRegion
;
548 * If we are going to write too large (>= 64 kB, size of the CSR heap)
549 * data buffers, we allocate a heap buffer in the process' memory, and
550 * CSR will read it via NtReadVirtualMemory.
552 BOOLEAN UseVirtualMemory
;
553 } CONSOLE_WRITEOUTPUT
, *PCONSOLE_WRITEOUTPUT
;
557 HANDLE ConsoleHandle
;
559 ULONG NumberOfEvents
;
560 } CONSOLE_GETNUMINPUTEVENTS
, *PCONSOLE_GETNUMINPUTEVENTS
;
566 HANDLE ConsoleHandle
;
568 } CONSOLE_CLOSEHANDLE
, *PCONSOLE_CLOSEHANDLE
;
573 HANDLE ConsoleHandle
;
575 } CONSOLE_VERIFYHANDLE
, *PCONSOLE_VERIFYHANDLE
;
579 HANDLE ConsoleHandle
;
582 BOOLEAN InheritHandle
;
585 } CONSOLE_DUPLICATEHANDLE
, *PCONSOLE_DUPLICATEHANDLE
;
589 HANDLE ConsoleHandle
;
592 } CONSOLE_GETHANDLEINFO
, *PCONSOLE_GETHANDLEINFO
;
596 HANDLE ConsoleHandle
;
600 } CONSOLE_SETHANDLEINFO
, *PCONSOLE_SETHANDLEINFO
;
605 typedef enum _CONSOLE_HANDLE_TYPE
609 } CONSOLE_HANDLE_TYPE
;
613 HANDLE ConsoleHandle
;
614 CONSOLE_HANDLE_TYPE HandleType
;
619 } CONSOLE_OPENCONSOLE
, *PCONSOLE_OPENCONSOLE
;
625 HANDLE ConsoleHandle
;
628 } CONSOLE_GETLARGESTWINDOWSIZE
, *PCONSOLE_GETLARGESTWINDOWSIZE
;
632 HANDLE ConsoleHandle
;
637 } CONSOLE_MENUCONTROL
, *PCONSOLE_MENUCONTROL
;
641 HANDLE ConsoleHandle
;
643 } CONSOLE_SETMENUCLOSE
, *PCONSOLE_SETMENUCLOSE
;
647 HANDLE ConsoleHandle
;
650 SMALL_RECT WindowRect
; // New console window position in the screen-buffer frame (Absolute == TRUE)
651 // or in the old window position frame (Absolute == FALSE).
652 } CONSOLE_SETWINDOWINFO
, *PCONSOLE_SETWINDOWINFO
;
656 HANDLE ConsoleHandle
;
658 } CONSOLE_GETWINDOW
, *PCONSOLE_GETWINDOW
;
662 HANDLE ConsoleHandle
;
664 } CONSOLE_SETICON
, *PCONSOLE_SETICON
;
670 HANDLE ConsoleHandle
;
672 USHORT TargetLength
; // Also used for storing the number of bytes written.
679 } CONSOLE_ADDGETALIAS
, *PCONSOLE_ADDGETALIAS
;
683 HANDLE ConsoleHandle
;
688 ULONG AliasesBufferLength
;
690 } CONSOLE_GETALLALIASES
, *PCONSOLE_GETALLALIASES
;
694 HANDLE ConsoleHandle
;
700 } CONSOLE_GETALLALIASESLENGTH
, *PCONSOLE_GETALLALIASESLENGTH
;
704 HANDLE ConsoleHandle
;
705 ULONG Length
; // ExeLength; // ExesLength
708 } CONSOLE_GETALIASESEXES
, *PCONSOLE_GETALIASESEXES
;
712 HANDLE ConsoleHandle
;
715 } CONSOLE_GETALIASESEXESLENGTH
, *PCONSOLE_GETALIASESEXESLENGTH
;
721 HANDLE ConsoleHandle
;
728 } CONSOLE_GETCOMMANDHISTORY
, *PCONSOLE_GETCOMMANDHISTORY
;
732 HANDLE ConsoleHandle
;
738 } CONSOLE_GETCOMMANDHISTORYLENGTH
, *PCONSOLE_GETCOMMANDHISTORYLENGTH
;
742 HANDLE ConsoleHandle
;
747 } CONSOLE_EXPUNGECOMMANDHISTORY
, *PCONSOLE_EXPUNGECOMMANDHISTORY
;
751 UINT HistoryBufferSize
;
752 UINT NumberOfHistoryBuffers
;
754 } CONSOLE_GETSETHISTORYINFO
, *PCONSOLE_GETSETHISTORYINFO
;
758 HANDLE ConsoleHandle
;
764 } CONSOLE_SETHISTORYNUMBERCOMMANDS
, *PCONSOLE_SETHISTORYNUMBERCOMMANDS
;
768 HANDLE ConsoleHandle
;
770 } CONSOLE_SETHISTORYMODE
, *PCONSOLE_SETHISTORYMODE
;
776 HANDLE ConsoleHandle
;
779 } CONSOLE_SETSCREENBUFFERSIZE
, *PCONSOLE_SETSCREENBUFFERSIZE
;
783 HANDLE ConsoleHandle
;
784 CONSOLE_SELECTION_INFO Info
;
785 } CONSOLE_GETSELECTIONINFO
, *PCONSOLE_GETSELECTIONINFO
;
789 HANDLE ConsoleHandle
;
791 BOOL OutputCP
; // TRUE : Output Code Page ; FALSE : Input Code Page
792 } CONSOLE_GETINPUTOUTPUTCP
, *PCONSOLE_GETINPUTOUTPUTCP
;
796 HANDLE ConsoleHandle
;
798 BOOL OutputCP
; // TRUE : Output Code Page ; FALSE : Input Code Page
800 } CONSOLE_SETINPUTOUTPUTCP
, *PCONSOLE_SETINPUTOUTPUTCP
;
804 HANDLE ConsoleHandle
;
805 CHAR LayoutBuffer
[KL_NAMELENGTH
* sizeof(WCHAR
)]; // Can hold up to 9 wchars
807 } CONSOLE_GETKBDLAYOUTNAME
, *PCONSOLE_GETKBDLAYOUTNAME
;
811 HANDLE ConsoleHandle
;
813 HANDLE StartHardwareEvent
;
814 HANDLE EndHardwareEvent
;
815 HANDLE ErrorHardwareEvent
;
820 ULONG VideoStateLength
;
821 PVOID VideoState
; // PVIDEO_HARDWARE_STATE_HEADER
825 ULONG UnusedBufferLength
;
829 } CONSOLE_REGISTERVDM
, *PCONSOLE_REGISTERVDM
;
831 typedef struct _CONSOLE_API_MESSAGE
835 PCSR_CAPTURE_BUFFER CsrCaptureData
;
836 CSR_API_NUMBER ApiNumber
;
841 /* Console initialization and uninitialization */
842 CONSOLE_ALLOCCONSOLE AllocConsoleRequest
;
843 CONSOLE_ATTACHCONSOLE AttachConsoleRequest
;
844 CONSOLE_FREECONSOLE FreeConsoleRequest
;
847 CONSOLE_GETPROCESSLIST GetProcessListRequest
;
848 CONSOLE_GENERATECTRLEVENT GenerateCtrlEventRequest
;
849 CONSOLE_NOTIFYLASTCLOSE NotifyLastCloseRequest
;
852 CONSOLE_OPENCONSOLE OpenConsoleRequest
;
853 CONSOLE_CLOSEHANDLE CloseHandleRequest
;
854 CONSOLE_VERIFYHANDLE VerifyHandleRequest
;
855 CONSOLE_DUPLICATEHANDLE DuplicateHandleRequest
;
856 CONSOLE_GETHANDLEINFO GetHandleInfoRequest
;
857 CONSOLE_SETHANDLEINFO SetHandleInfoRequest
;
860 CONSOLE_SHOWCURSOR ShowCursorRequest
;
861 CONSOLE_SETCURSOR SetCursorRequest
;
862 CONSOLE_GETSETCURSORINFO CursorInfoRequest
;
863 CONSOLE_SETCURSORPOSITION SetCursorPositionRequest
;
864 CONSOLE_GETMOUSEINFO GetMouseInfoRequest
;
867 CONSOLE_CREATESCREENBUFFER CreateScreenBufferRequest
;
868 CONSOLE_SETACTIVESCREENBUFFER SetScreenBufferRequest
;
869 CONSOLE_GETSCREENBUFFERINFO ScreenBufferInfoRequest
;
870 CONSOLE_SETSCREENBUFFERSIZE SetScreenBufferSizeRequest
;
871 CONSOLE_SCROLLSCREENBUFFER ScrollScreenBufferRequest
;
873 CONSOLE_GETSELECTIONINFO GetSelectionInfoRequest
;
874 CONSOLE_FLUSHINPUTBUFFER FlushInputBufferRequest
;
877 CONSOLE_GETSETCONSOLEMODE ConsoleModeRequest
;
878 CONSOLE_GETDISPLAYMODE GetDisplayModeRequest
;
879 CONSOLE_SETDISPLAYMODE SetDisplayModeRequest
;
880 CONSOLE_GETSETHWSTATE HardwareStateRequest
;
883 CONSOLE_INVALIDATEDIBITS InvalidateDIBitsRequest
;
884 CONSOLE_SETPALETTE SetPaletteRequest
;
885 CONSOLE_GETSETCONSOLETITLE TitleRequest
;
886 CONSOLE_GETLARGESTWINDOWSIZE GetLargestWindowSizeRequest
;
887 CONSOLE_MENUCONTROL MenuControlRequest
;
888 CONSOLE_SETMENUCLOSE SetMenuCloseRequest
;
889 CONSOLE_SETWINDOWINFO SetWindowInfoRequest
;
890 CONSOLE_GETWINDOW GetWindowRequest
;
891 CONSOLE_SETICON SetIconRequest
;
894 CONSOLE_READCONSOLE ReadConsoleRequest
; // SrvReadConsole / ReadConsole
895 CONSOLE_GETINPUT GetInputRequest
; // SrvGetConsoleInput / PeekConsoleInput & ReadConsoleInput
896 CONSOLE_READOUTPUT ReadOutputRequest
; // SrvReadConsoleOutput / ReadConsoleOutput
897 CONSOLE_READOUTPUTCODE ReadOutputCodeRequest
; // SrvReadConsoleOutputString / ReadConsoleOutputAttribute & ReadConsoleOutputCharacter
898 CONSOLE_GETNUMINPUTEVENTS GetNumInputEventsRequest
;
901 CONSOLE_WRITECONSOLE WriteConsoleRequest
; // SrvWriteConsole / WriteConsole
902 CONSOLE_WRITEINPUT WriteInputRequest
;
903 CONSOLE_WRITEOUTPUT WriteOutputRequest
;
904 CONSOLE_WRITEOUTPUTCODE WriteOutputCodeRequest
;
906 CONSOLE_FILLOUTPUTCODE FillOutputRequest
;
907 CONSOLE_SETTEXTATTRIB SetTextAttribRequest
;
910 CONSOLE_ADDGETALIAS ConsoleAliasRequest
;
911 CONSOLE_GETALLALIASES GetAllAliasesRequest
;
912 CONSOLE_GETALLALIASESLENGTH GetAllAliasesLengthRequest
;
913 CONSOLE_GETALIASESEXES GetAliasesExesRequest
;
914 CONSOLE_GETALIASESEXESLENGTH GetAliasesExesLengthRequest
;
917 CONSOLE_GETCOMMANDHISTORY GetCommandHistoryRequest
;
918 CONSOLE_GETCOMMANDHISTORYLENGTH GetCommandHistoryLengthRequest
;
919 CONSOLE_EXPUNGECOMMANDHISTORY ExpungeCommandHistoryRequest
;
920 CONSOLE_GETSETHISTORYINFO HistoryInfoRequest
;
921 CONSOLE_SETHISTORYNUMBERCOMMANDS SetHistoryNumberCommandsRequest
;
922 CONSOLE_SETHISTORYMODE SetHistoryModeRequest
;
924 /* Input and Output Code Pages; keyboard */
925 CONSOLE_GETINPUTOUTPUTCP GetConsoleCPRequest
;
926 CONSOLE_SETINPUTOUTPUTCP SetConsoleCPRequest
;
927 CONSOLE_GETKBDLAYOUTNAME GetKbdLayoutNameRequest
;
929 /* Virtual DOS Machine */
930 CONSOLE_REGISTERVDM RegisterVDMRequest
;
932 } CONSOLE_API_MESSAGE
, *PCONSOLE_API_MESSAGE
;
934 // Check that a CONSOLE_API_MESSAGE can hold in a CSR_API_MESSAGE.
935 CHECK_API_MSG_SIZE(CONSOLE_API_MESSAGE
);