2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS Console Server DLL
4 * FILE: win32ss/user/winsrv/consrv/consrv.h
5 * PURPOSE: Main header - Definitions
6 * PROGRAMMERS: Hermes Belusca-Maito (hermes.belusca@sfr.fr)
13 #include "../winsrv.h"
15 /* PSDK/NDK Headers */
16 #define WIN32_NO_STATUS
18 #define COM_NO_WINDOWS_H
24 #define NTOS_MODE_USER
25 #include <ndk/exfuncs.h>
26 #include <ndk/mmfuncs.h>
29 #include <win/conmsg.h>
35 extern HINSTANCE ConSrvDllInstance
;
37 #define ConsoleGetPerProcessData(Process) \
38 ((PCONSOLE_PROCESS_DATA)((Process)->ServerData[CONSRV_SERVERDLL_INDEX]))
40 typedef struct _CONSOLE_PROCESS_DATA
42 LIST_ENTRY ConsoleLink
;
43 PCSR_PROCESS Process
; // Process owning this structure.
46 BOOLEAN ConsoleApp
; // TRUE if it is a CUI app, FALSE otherwise.
48 RTL_CRITICAL_SECTION HandleTableLock
;
49 ULONG HandleTableSize
;
50 struct _CONSOLE_IO_HANDLE
* /* PCONSOLE_IO_HANDLE */ HandleTable
; // Length-varying table
52 LPTHREAD_START_ROUTINE CtrlRoutine
;
53 LPTHREAD_START_ROUTINE PropRoutine
; // We hold the property dialog handler there, till all the GUI thingie moves out from CSRSS.
54 // LPTHREAD_START_ROUTINE ImeRoutine;
55 } CONSOLE_PROCESS_DATA
, *PCONSOLE_PROCESS_DATA
;
58 // Helper for code refactoring
59 // #define USE_NEW_CONSOLE_WAY
61 #ifndef USE_NEW_CONSOLE_WAY
62 #include "include/conio.h"
64 #include "include/conio_winsrv.h"
67 #include "include/console.h"
68 #include "include/settings.h"
69 #include "include/term.h"
71 #include "conoutput.h"
73 #include "lineinput.h"
78 ConsoleClientShutdown(IN PCSR_PROCESS CsrProcess
,
80 IN BOOLEAN FirstPhase
);
82 #endif /* __CONSRV_H__ */