d276e6a7e08720a4cf52425168a7b1f97bc7cf7d
[reactos.git] / reactos / include / subsys / csrss / csrss.h
1 #ifndef __INCLUDE_CSRSS_CSRSS_H
2 #define __INCLUDE_CSRSS_CSRSS_H
3
4 #include <blue/ntddblue.h>
5
6 #define CSR_NATIVE 0x0000
7 #define CSR_CONSOLE 0x0001
8 #define CSR_GUI 0x0002
9
10 /*
11 typedef union _CSR_API_NUMBER
12 {
13 WORD Index; // CSRSS API number
14 WORD Subsystem; // 0=NTDLL;1=KERNEL32;2=KERNEL32
15 } CSR_API_NUMBER, *PCSR_API_NUMBER;
16 */
17
18 typedef ULONG CSR_API_NUMBER;
19
20 #define MAKE_CSR_API(Number, Server) \
21 ((Server) << 16) + Number
22
23 #define CSR_CSRSS_SECTION_SIZE (65536)
24
25 typedef VOID (CALLBACK *PCONTROLDISPATCHER)(DWORD);
26
27 typedef struct
28 {
29 ULONG Dummy;
30 } CSRSS_CONNECT_PROCESS, *PCSRSS_CONNECT_PROCESS;
31
32 typedef struct
33 {
34 HANDLE NewProcessId;
35 ULONG Flags;
36 } CSRSS_CREATE_PROCESS, *PCSRSS_CREATE_PROCESS;
37
38 typedef struct
39 {
40 ULONG Dummy;
41 } CSRSS_TERMINATE_PROCESS, *PCSRSS_TERMINATE_PROCESS;
42
43 typedef struct
44 {
45 ULONG nMaxIds;
46 ULONG nProcessIdsCopied;
47 ULONG nProcessIdsTotal;
48 HANDLE ProcessId[1];
49 } CSRSS_GET_PROCESS_LIST, *PCSRSS_GET_PROCESS_LIST;
50
51 typedef struct
52 {
53 HANDLE ConsoleHandle;
54 BOOL Unicode;
55 ULONG NrCharactersToWrite;
56 BYTE Buffer[1];
57 ULONG NrCharactersWritten;
58 } CSRSS_WRITE_CONSOLE, *PCSRSS_WRITE_CONSOLE;
59
60 typedef struct
61 {
62 HANDLE ConsoleHandle;
63 BOOL Unicode;
64 WORD NrCharactersToRead;
65 WORD nCharsCanBeDeleted; /* number of chars already in buffer that can be backspaced */
66 HANDLE EventHandle;
67 ULONG NrCharactersRead;
68 BYTE Buffer[1];
69 } CSRSS_READ_CONSOLE, *PCSRSS_READ_CONSOLE;
70
71 typedef struct
72 {
73 PCONTROLDISPATCHER CtrlDispatcher;
74 BOOL ConsoleNeeded;
75 HANDLE Console;
76 HANDLE InputHandle;
77 HANDLE OutputHandle;
78 } CSRSS_ALLOC_CONSOLE, *PCSRSS_ALLOC_CONSOLE;
79
80 typedef struct
81 {
82 ULONG Dummy;
83 } CSRSS_FREE_CONSOLE, *PCSRSS_FREE_CONSOLE;
84
85 typedef struct
86 {
87 HANDLE ConsoleHandle;
88 CONSOLE_SCREEN_BUFFER_INFO Info;
89 } CSRSS_SCREEN_BUFFER_INFO, *PCSRSS_SCREEN_BUFFER_INFO;
90
91 typedef struct
92 {
93 HANDLE ConsoleHandle;
94 COORD Position;
95 } CSRSS_SET_CURSOR, *PCSRSS_SET_CURSOR;
96
97 typedef struct
98 {
99 HANDLE ConsoleHandle;
100 BOOL Unicode;
101 union
102 {
103 CHAR AsciiChar;
104 WCHAR UnicodeChar;
105 } Char;
106 COORD Position;
107 WORD Length;
108 ULONG NrCharactersWritten;
109 } CSRSS_FILL_OUTPUT, *PCSRSS_FILL_OUTPUT;
110
111 typedef struct
112 {
113 HANDLE ConsoleHandle;
114 CHAR Attribute;
115 COORD Coord;
116 WORD Length;
117 } CSRSS_FILL_OUTPUT_ATTRIB, *PCSRSS_FILL_OUTPUT_ATTRIB;
118
119 typedef struct
120 {
121 HANDLE ConsoleHandle;
122 BOOL Unicode;
123 INPUT_RECORD Input;
124 BOOL MoreEvents;
125 HANDLE Event;
126 } CSRSS_READ_INPUT, *PCSRSS_READ_INPUT;
127
128 typedef struct
129 {
130 HANDLE ConsoleHandle;
131 BOOL Unicode;
132 WORD Length;
133 COORD Coord;
134 CHAR String[1];
135 COORD EndCoord;
136 ULONG NrCharactersWritten;
137 } CSRSS_WRITE_CONSOLE_OUTPUT_CHAR, *PCSRSS_WRITE_CONSOLE_OUTPUT_CHAR;
138
139 typedef struct
140 {
141 HANDLE ConsoleHandle;
142 WORD Length;
143 COORD Coord;
144 CHAR String[1];
145 COORD EndCoord;
146 } CSRSS_WRITE_CONSOLE_OUTPUT_ATTRIB, *PCSRSS_WRITE_CONSOLE_OUTPUT_ATTRIB;
147
148 typedef struct
149 {
150 HANDLE ConsoleHandle;
151 CONSOLE_CURSOR_INFO Info;
152 } CSRSS_GET_CURSOR_INFO, *PCSRSS_GET_CURSOR_INFO;
153
154 typedef struct
155 {
156 HANDLE ConsoleHandle;
157 CONSOLE_CURSOR_INFO Info;
158 } CSRSS_SET_CURSOR_INFO, *PCSRSS_SET_CURSOR_INFO;
159
160 typedef struct
161 {
162 HANDLE ConsoleHandle;
163 CHAR Attrib;
164 } CSRSS_SET_ATTRIB, *PCSRSS_SET_ATTRIB;
165
166 typedef struct
167 {
168 HANDLE ConsoleHandle;
169 DWORD Mode;
170 } CSRSS_SET_CONSOLE_MODE, *PCSRSS_SET_CONSOLE_MODE;
171
172 typedef struct
173 {
174 HANDLE ConsoleHandle;
175 DWORD ConsoleMode;
176 } CSRSS_GET_CONSOLE_MODE, *PCSRSS_GET_CONSOLE_MODE;
177
178 typedef struct
179 {
180 /* may want to add some parameters here someday */
181 HANDLE OutputHandle; /* handle to newly created screen buffer */
182 } CSRSS_CREATE_SCREEN_BUFFER, *PCSRSS_CREATE_SCREEN_BUFFER;
183
184 typedef struct
185 {
186 HANDLE OutputHandle; /* handle to screen buffer to switch to */
187 } CSRSS_SET_SCREEN_BUFFER, *PCSRSS_SET_SCREEN_BUFFER;
188
189 typedef struct
190 {
191 HANDLE UniqueThread;
192 CLIENT_ID Cid;
193 } CSRSS_IDENTIFY_ALERTABLE_THREAD, *PCSRSS_IDENTIFY_ALERTABLE_THREAD;
194
195 typedef struct
196 {
197 HANDLE Console;
198 DWORD Length;
199 WCHAR Title[1];
200 } CSRSS_SET_TITLE, *PCSRSS_SET_TITLE;
201
202 typedef struct
203 {
204 HANDLE ConsoleHandle;
205 DWORD Length;
206 WCHAR Title[1];
207 } CSRSS_GET_TITLE, *PCSRSS_GET_TITLE;
208
209 typedef struct
210 {
211 HANDLE ConsoleHandle;
212 BOOL Unicode;
213 COORD BufferSize;
214 COORD BufferCoord;
215 SMALL_RECT WriteRegion;
216 CHAR_INFO* CharInfo;
217 } CSRSS_WRITE_CONSOLE_OUTPUT, *PCSRSS_WRITE_CONSOLE_OUTPUT;
218
219 typedef struct
220 {
221 HANDLE ConsoleInput;
222 } CSRSS_FLUSH_INPUT_BUFFER, *PCSRSS_FLUSH_INPUT_BUFFER;
223
224 typedef struct
225 {
226 HANDLE ConsoleHandle;
227 BOOL Unicode;
228 SMALL_RECT ScrollRectangle;
229 BOOLEAN UseClipRectangle;
230 SMALL_RECT ClipRectangle;
231 COORD DestinationOrigin;
232 CHAR_INFO Fill;
233 } CSRSS_SCROLL_CONSOLE_SCREEN_BUFFER, *PCSRSS_SCROLL_CONSOLE_SCREEN_BUFFER;
234
235 typedef struct
236 {
237 HANDLE ConsoleHandle;
238 BOOL Unicode;
239 DWORD NumCharsToRead;
240 COORD ReadCoord;
241 COORD EndCoord;
242 DWORD CharsRead;
243 CHAR String[1];
244 }CSRSS_READ_CONSOLE_OUTPUT_CHAR, *PCSRSS_READ_CONSOLE_OUTPUT_CHAR;
245
246 typedef struct
247 {
248 HANDLE ConsoleHandle;
249 DWORD NumAttrsToRead;
250 COORD ReadCoord;
251 COORD EndCoord;
252 CHAR String[1];
253 }CSRSS_READ_CONSOLE_OUTPUT_ATTRIB, *PCSRSS_READ_CONSOLE_OUTPUT_ATTRIB;
254
255 typedef struct
256 {
257 HANDLE ConsoleHandle;
258 DWORD NumInputEvents;
259 }CSRSS_GET_NUM_INPUT_EVENTS, *PCSRSS_GET_NUM_INPUT_EVENTS;
260
261 typedef struct
262 {
263 HANDLE ProcessId;
264 } CSRSS_REGISTER_SERVICES_PROCESS, *PCSRSS_REGISTER_SERVICES_PROCESS;
265
266 typedef struct
267 {
268 UINT Flags;
269 DWORD Reserved;
270 } CSRSS_EXIT_REACTOS, *PCSRSS_EXIT_REACTOS;
271
272 typedef struct
273 {
274 DWORD Level;
275 DWORD Flags;
276 } CSRSS_SET_SHUTDOWN_PARAMETERS, *PCSRSS_SET_SHUTDOWN_PARAMETERS;
277
278 typedef struct
279 {
280 DWORD Level;
281 DWORD Flags;
282 } CSRSS_GET_SHUTDOWN_PARAMETERS, *PCSRSS_GET_SHUTDOWN_PARAMETERS;
283
284 typedef struct
285 {
286 HANDLE ConsoleHandle;
287 BOOL Unicode;
288 DWORD Length;
289 INPUT_RECORD* InputRecord;
290 } CSRSS_PEEK_CONSOLE_INPUT, *PCSRSS_PEEK_CONSOLE_INPUT;
291
292 typedef struct
293 {
294 HANDLE ConsoleHandle;
295 BOOL Unicode;
296 COORD BufferSize;
297 COORD BufferCoord;
298 SMALL_RECT ReadRegion;
299 CHAR_INFO* CharInfo;
300 } CSRSS_READ_CONSOLE_OUTPUT, *PCSRSS_READ_CONSOLE_OUTPUT;
301
302 typedef struct
303 {
304 HANDLE ConsoleHandle;
305 BOOL Unicode;
306 DWORD Length;
307 INPUT_RECORD* InputRecord;
308 } CSRSS_WRITE_CONSOLE_INPUT, *PCSRSS_WRITE_CONSOLE_INPUT;
309
310 typedef struct
311 {
312 HANDLE InputHandle;
313 } CSRSS_GET_INPUT_HANDLE, *PCSRSS_GET_INPUT_HANDLE;
314
315 typedef struct
316 {
317 HANDLE OutputHandle;
318 } CSRSS_GET_OUTPUT_HANDLE, *PCSRSS_GET_OUTPUT_HANDLE;
319
320 typedef struct
321 {
322 HANDLE Handle;
323 } CSRSS_CLOSE_HANDLE, *PCSRSS_CLOSE_HANDLE;
324
325 typedef struct
326 {
327 HANDLE Handle;
328 } CSRSS_VERIFY_HANDLE, *PCSRSS_VERIFY_HANDLE;
329
330 typedef struct
331 {
332 HANDLE Handle;
333 HANDLE ProcessId;
334 } CSRSS_DUPLICATE_HANDLE, *PCSRSS_DUPLICATE_HANDLE;
335
336 #define CONSOLE_HARDWARE_STATE_GET 0
337 #define CONSOLE_HARDWARE_STATE_SET 1
338
339 #define CONSOLE_HARDWARE_STATE_GDI_MANAGED 0
340 #define CONSOLE_HARDWARE_STATE_DIRECT 1
341
342 typedef struct
343 {
344 HANDLE ConsoleHandle;
345 DWORD SetGet; /* 0=get; 1=set */
346 DWORD State;
347 } CSRSS_SETGET_CONSOLE_HW_STATE, *PCSRSS_SETGET_CONSOLE_HW_STATE;
348
349 typedef struct
350 {
351 HWND WindowHandle;
352 } CSRSS_GET_CONSOLE_WINDOW, *PCSRSS_GET_CONSOLE_WINDOW;
353
354 typedef struct
355 {
356 HICON WindowIcon;
357 } CSRSS_SET_CONSOLE_ICON, *PCSRSS_SET_CONSOLE_ICON;
358
359 typedef struct
360 {
361 HDESK DesktopHandle;
362 } CSRSS_CREATE_DESKTOP, *PCSRSS_CREATE_DESKTOP;
363
364 typedef struct
365 {
366 HWND DesktopWindow;
367 ULONG Width;
368 ULONG Height;
369 } CSRSS_SHOW_DESKTOP, *PCSRSS_SHOW_DESKTOP;
370
371 typedef struct
372 {
373 HWND DesktopWindow;
374 } CSRSS_HIDE_DESKTOP, *PCSRSS_HIDE_DESKTOP;
375
376 typedef struct
377 {
378 HWND LogonNotifyWindow;
379 } CSRSS_SET_LOGON_NOTIFY_WINDOW, *PCSRSS_SET_LOGON_NOTIFY_WINDOW;
380
381 typedef struct
382 {
383 HANDLE ProcessId;
384 BOOL Register;
385 } CSRSS_REGISTER_LOGON_PROCESS, *PCSRSS_REGISTER_LOGON_PROCESS;
386
387 typedef struct
388 {
389 UINT CodePage;
390 } CSRSS_GET_CONSOLE_CP, *PCSRSS_GET_CONSOLE_CP;
391
392 typedef struct
393 {
394 UINT CodePage;
395 } CSRSS_SET_CONSOLE_CP, *PCSRSS_SET_CONSOLE_CP;
396
397 typedef struct
398 {
399 UINT CodePage;
400 } CSRSS_GET_CONSOLE_OUTPUT_CP, *PCSRSS_GET_CONSOLE_OUTPUT_CP;
401
402 typedef struct
403 {
404 UINT CodePage;
405 } CSRSS_SET_CONSOLE_OUTPUT_CP, *PCSRSS_SET_CONSOLE_OUTPUT_CP;
406
407 typedef struct
408 {
409 HANDLE InputWaitHandle;
410 } CSRSS_GET_INPUT_WAIT_HANDLE, *PCSRSS_GET_INPUT_WAIT_HANDLE;
411
412 #define CSRSS_MAX_WRITE_CONSOLE \
413 (MAX_MESSAGE_DATA - sizeof(ULONG) - sizeof(CSRSS_WRITE_CONSOLE))
414
415 #define CSRSS_MAX_SET_TITLE (MAX_MESSAGE_DATA - sizeof( HANDLE ) - sizeof( DWORD ) - sizeof( ULONG ) - LPC_MESSAGE_BASE_SIZE)
416
417 #define CSRSS_MAX_WRITE_CONSOLE_OUTPUT_CHAR (MAX_MESSAGE_DATA - sizeof( ULONG ) - sizeof( CSRSS_WRITE_CONSOLE_OUTPUT_CHAR ))
418
419 #define CSRSS_MAX_WRITE_CONSOLE_OUTPUT_ATTRIB ((MAX_MESSAGE_DATA - sizeof( ULONG ) - sizeof( CSRSS_WRITE_CONSOLE_OUTPUT_ATTRIB )) / 2)
420
421 #define CSRSS_MAX_READ_CONSOLE (MAX_MESSAGE_DATA - sizeof( ULONG ) - sizeof( CSRSS_READ_CONSOLE ))
422
423 #define CSRSS_MAX_READ_CONSOLE_OUTPUT_CHAR (MAX_MESSAGE_DATA - sizeof(ULONG) - sizeof(HANDLE) - sizeof(DWORD) - sizeof(CSRSS_READ_CONSOLE_OUTPUT_CHAR))
424
425 #define CSRSS_MAX_READ_CONSOLE_OUTPUT_ATTRIB (MAX_MESSAGE_DATA - sizeof(ULONG) - sizeof(HANDLE) - sizeof(DWORD) - sizeof(CSRSS_READ_CONSOLE_OUTPUT_ATTRIB))
426
427 /* WCHARs, not bytes! */
428 #define CSRSS_MAX_TITLE_LENGTH 80
429
430 #define CREATE_PROCESS (0x0)
431 #define TERMINATE_PROCESS (0x1)
432 #define WRITE_CONSOLE (0x2)
433 #define READ_CONSOLE (0x3)
434 #define ALLOC_CONSOLE (0x4)
435 #define FREE_CONSOLE (0x5)
436 #define CONNECT_PROCESS (0x6)
437 #define SCREEN_BUFFER_INFO (0x7)
438 #define SET_CURSOR (0x8)
439 #define FILL_OUTPUT (0x9)
440 #define READ_INPUT (0xA)
441 #define WRITE_CONSOLE_OUTPUT_CHAR (0xB)
442 #define WRITE_CONSOLE_OUTPUT_ATTRIB (0xC)
443 #define FILL_OUTPUT_ATTRIB (0xD)
444 #define GET_CURSOR_INFO (0xE)
445 #define SET_CURSOR_INFO (0xF)
446 #define SET_ATTRIB (0x10)
447 #define GET_CONSOLE_MODE (0x11)
448 #define SET_CONSOLE_MODE (0x12)
449 #define CREATE_SCREEN_BUFFER (0x13)
450 #define SET_SCREEN_BUFFER (0x14)
451 #define SET_TITLE (0x15)
452 #define GET_TITLE (0x16)
453 #define WRITE_CONSOLE_OUTPUT (0x17)
454 #define FLUSH_INPUT_BUFFER (0x18)
455 #define SCROLL_CONSOLE_SCREEN_BUFFER (0x19)
456 #define READ_CONSOLE_OUTPUT_CHAR (0x1A)
457 #define READ_CONSOLE_OUTPUT_ATTRIB (0x1B)
458 #define GET_NUM_INPUT_EVENTS (0x1C)
459 #define REGISTER_SERVICES_PROCESS (0x1D)
460 #define EXIT_REACTOS (0x1E)
461 #define GET_SHUTDOWN_PARAMETERS (0x1F)
462 #define SET_SHUTDOWN_PARAMETERS (0x20)
463 #define PEEK_CONSOLE_INPUT (0x21)
464 #define READ_CONSOLE_OUTPUT (0x22)
465 #define WRITE_CONSOLE_INPUT (0x23)
466 #define GET_INPUT_HANDLE (0x24)
467 #define GET_OUTPUT_HANDLE (0x25)
468 #define CLOSE_HANDLE (0x26)
469 #define VERIFY_HANDLE (0x27)
470 #define DUPLICATE_HANDLE (0x28)
471 #define SETGET_CONSOLE_HW_STATE (0x29)
472 #define GET_CONSOLE_WINDOW (0x2A)
473 #define CREATE_DESKTOP (0x2B)
474 #define SHOW_DESKTOP (0x2C)
475 #define HIDE_DESKTOP (0x2D)
476 #define SET_CONSOLE_ICON (0x2E)
477 #define SET_LOGON_NOTIFY_WINDOW (0x2F)
478 #define REGISTER_LOGON_PROCESS (0x30)
479 #define GET_CONSOLE_CP (0x31)
480 #define SET_CONSOLE_CP (0x32)
481 #define GET_CONSOLE_OUTPUT_CP (0x33)
482 #define SET_CONSOLE_OUTPUT_CP (0x34)
483 #define GET_INPUT_WAIT_HANDLE (0x35)
484 #define GET_PROCESS_LIST (0x36)
485
486 /* Keep in sync with definition below. */
487 #define CSRSS_HEADER_SIZE (LPC_MESSAGE_BASE_SIZE + sizeof(ULONG) + sizeof(NTSTATUS))
488
489 typedef struct _CSR_API_MESSAGE
490 {
491 union
492 {
493 LPC_MESSAGE Header;
494 struct
495 {
496 BYTE HeaderReserved[LPC_MESSAGE_BASE_SIZE];
497 ULONG Type;
498 NTSTATUS Status;
499 union
500 {
501 CSRSS_CREATE_PROCESS CreateProcessRequest;
502 CSRSS_CONNECT_PROCESS ConnectRequest;
503 CSRSS_WRITE_CONSOLE WriteConsoleRequest;
504 CSRSS_READ_CONSOLE ReadConsoleRequest;
505 CSRSS_ALLOC_CONSOLE AllocConsoleRequest;
506 CSRSS_SCREEN_BUFFER_INFO ScreenBufferInfoRequest;
507 CSRSS_SET_CURSOR SetCursorRequest;
508 CSRSS_FILL_OUTPUT FillOutputRequest;
509 CSRSS_READ_INPUT ReadInputRequest;
510 CSRSS_WRITE_CONSOLE_OUTPUT_CHAR WriteConsoleOutputCharRequest;
511 CSRSS_WRITE_CONSOLE_OUTPUT_ATTRIB WriteConsoleOutputAttribRequest;
512 CSRSS_FILL_OUTPUT_ATTRIB FillOutputAttribRequest;
513 CSRSS_SET_CURSOR_INFO SetCursorInfoRequest;
514 CSRSS_GET_CURSOR_INFO GetCursorInfoRequest;
515 CSRSS_SET_ATTRIB SetAttribRequest;
516 CSRSS_SET_CONSOLE_MODE SetConsoleModeRequest;
517 CSRSS_GET_CONSOLE_MODE GetConsoleModeRequest;
518 CSRSS_CREATE_SCREEN_BUFFER CreateScreenBufferRequest;
519 CSRSS_SET_SCREEN_BUFFER SetScreenBufferRequest;
520 CSRSS_SET_TITLE SetTitleRequest;
521 CSRSS_GET_TITLE GetTitleRequest;
522 CSRSS_WRITE_CONSOLE_OUTPUT WriteConsoleOutputRequest;
523 CSRSS_FLUSH_INPUT_BUFFER FlushInputBufferRequest;
524 CSRSS_SCROLL_CONSOLE_SCREEN_BUFFER ScrollConsoleScreenBufferRequest;
525 CSRSS_READ_CONSOLE_OUTPUT_CHAR ReadConsoleOutputCharRequest;
526 CSRSS_READ_CONSOLE_OUTPUT_ATTRIB ReadConsoleOutputAttribRequest;
527 CSRSS_GET_NUM_INPUT_EVENTS GetNumInputEventsRequest;
528 CSRSS_REGISTER_SERVICES_PROCESS RegisterServicesProcessRequest;
529 CSRSS_EXIT_REACTOS ExitReactosRequest;
530 CSRSS_SET_SHUTDOWN_PARAMETERS SetShutdownParametersRequest;
531 CSRSS_GET_SHUTDOWN_PARAMETERS GetShutdownParametersRequest;
532 CSRSS_PEEK_CONSOLE_INPUT PeekConsoleInputRequest;
533 CSRSS_READ_CONSOLE_OUTPUT ReadConsoleOutputRequest;
534 CSRSS_WRITE_CONSOLE_INPUT WriteConsoleInputRequest;
535 CSRSS_GET_INPUT_HANDLE GetInputHandleRequest;
536 CSRSS_GET_OUTPUT_HANDLE GetOutputHandleRequest;
537 CSRSS_CLOSE_HANDLE CloseHandleRequest;
538 CSRSS_VERIFY_HANDLE VerifyHandleRequest;
539 CSRSS_DUPLICATE_HANDLE DuplicateHandleRequest;
540 CSRSS_SETGET_CONSOLE_HW_STATE ConsoleHardwareStateRequest;
541 CSRSS_GET_CONSOLE_WINDOW GetConsoleWindowRequest;
542 CSRSS_CREATE_DESKTOP CreateDesktopRequest;
543 CSRSS_SHOW_DESKTOP ShowDesktopRequest;
544 CSRSS_HIDE_DESKTOP HideDesktopRequest;
545 CSRSS_SET_CONSOLE_ICON SetConsoleIconRequest;
546 CSRSS_SET_LOGON_NOTIFY_WINDOW SetLogonNotifyWindowRequest;
547 CSRSS_REGISTER_LOGON_PROCESS RegisterLogonProcessRequest;
548 CSRSS_GET_CONSOLE_CP GetConsoleCodePage;
549 CSRSS_SET_CONSOLE_CP SetConsoleCodePage;
550 CSRSS_GET_CONSOLE_OUTPUT_CP GetConsoleOutputCodePage;
551 CSRSS_SET_CONSOLE_OUTPUT_CP SetConsoleOutputCodePage;
552 CSRSS_GET_INPUT_WAIT_HANDLE GetConsoleInputWaitHandle;
553 CSRSS_GET_PROCESS_LIST GetProcessListRequest;
554 } Data;
555 };
556 };
557 } CSR_API_MESSAGE, *PCSR_API_MESSAGE;
558
559 #endif /* __INCLUDE_CSRSS_CSRSS_H */