f12be8458ea9f7bd39918f4f0b95102cc1f0a49a
[reactos.git] / subsystems / win / basesrv / vdm.h
1 /*
2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS Base API Server DLL
4 * FILE: subsystems/win/basesrv/vdm.h
5 * PURPOSE: VDM Definitions
6 * PROGRAMMERS: Aleksandar Andrejevic <theflash AT sdf DOT lonestar DOT org>
7 */
8
9 #ifndef __VDM_H__
10 #define __VDM_H__
11
12 #include <win/vdm.h>
13
14 /* DEFINITIONS ****************************************************************/
15
16 #define VDM_POLICY_KEY_NAME L"Software\\Policies\\Microsoft\\Windows\\AppCompat"
17 #define VDM_DISALLOWED_VALUE_NAME L"VDMDisallowed"
18
19 typedef struct _VDM_CONSOLE_RECORD
20 {
21 LIST_ENTRY Entry;
22 HANDLE ConsoleHandle;
23 PCHAR CurrentDirs;
24 ULONG CurDirsLength;
25 ULONG SessionId;
26 LIST_ENTRY DosListHead;
27 // TODO: Structure incomplete!!!
28 } VDM_CONSOLE_RECORD, *PVDM_CONSOLE_RECORD;
29
30 typedef struct _VDM_DOS_RECORD
31 {
32 LIST_ENTRY Entry;
33 USHORT State;
34 ULONG ExitCode;
35 HANDLE ParentProcess;
36 // TODO: Structure incomplete!!!
37 } VDM_DOS_RECORD, *PVDM_DOS_RECORD;
38
39 /* FUNCTIONS ******************************************************************/
40
41 NTSTATUS NTAPI BaseSrvGetConsoleRecord(HANDLE ConsoleHandle, PVDM_CONSOLE_RECORD *Record);
42 VOID NTAPI BaseInitializeVDM(VOID);
43
44 #endif // __VDM_H__