ReactOS  0.4.14-dev-114-gc8cbd56
winsta.h
Go to the documentation of this file.
1 #pragma once
2 
3 #define WINSTA_OBJ_DIR L"\\Windows\\WindowStations"
4 #define SESSION_DIR L"\\Sessions"
5 
6 /* Window Station Status Flags */
7 #define WSS_LOCKED (1)
8 #define WSS_NOINTERACTIVE (2)
9 #define WSS_NOIO (4)
10 #define WSS_SHUTDOWN (8)
11 #define WSS_DYING (16)
12 #define WSS_REALSHUTDOWN (32)
13 
14 typedef struct _WINSTATION_OBJECT
15 {
17 
22 
25 
31  PCLIP pClipBase; // Not a clip object.
37 
42 
44 
46 extern HANDLE gpidLogon;
47 extern HWND hwndSAS;
49 
50 #define WINSTA_READ STANDARD_RIGHTS_READ | \
51  WINSTA_ENUMDESKTOPS | \
52  WINSTA_ENUMERATE | \
53  WINSTA_READATTRIBUTES | \
54  WINSTA_READSCREEN
55 
56 #define WINSTA_WRITE STANDARD_RIGHTS_WRITE | \
57  WINSTA_ACCESSCLIPBOARD | \
58  WINSTA_CREATEDESKTOP | \
59  WINSTA_WRITEATTRIBUTES
60 
61 #define WINSTA_EXECUTE STANDARD_RIGHTS_EXECUTE | \
62  WINSTA_ACCESSGLOBALATOMS | \
63  WINSTA_EXITWINDOWS
64 
65 #define WINSTA_ACCESS_ALL STANDARD_RIGHTS_REQUIRED | \
66  WINSTA_ACCESSCLIPBOARD | \
67  WINSTA_ACCESSGLOBALATOMS | \
68  WINSTA_CREATEDESKTOP | \
69  WINSTA_ENUMDESKTOPS | \
70  WINSTA_ENUMERATE | \
71  WINSTA_EXITWINDOWS | \
72  WINSTA_READATTRIBUTES | \
73  WINSTA_READSCREEN | \
74  WINSTA_WRITEATTRIBUTES
75 
76 INIT_FUNCTION
78 NTAPI
80 
82 NTAPI
84 
86 NTAPI
89 
91 NTAPI
94 
96 NTAPI
99 
100 NTSTATUS
101 FASTCALL
103  HWINSTA WindowStation,
107  POBJECT_HANDLE_INFORMATION pObjectHandleInfo);
108 
109 NTSTATUS
110 FASTCALL
112  OUT HWINSTA* phWinSta,
115  IN KPROCESSOR_MODE OwnerMode,
116  IN ACCESS_MASK dwDesiredAccess,
117  DWORD Unknown2,
118  DWORD Unknown3,
119  DWORD Unknown4,
120  DWORD Unknown5,
121  DWORD Unknown6);
122 
123 BOOL FASTCALL UserSetProcessWindowStation(HWINSTA hWindowStation);
124 
128 /* EOF */
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES ObjectAttributes
Definition: conport.c:35
INT fClipboardChanged
Definition: winsta.h:35
#define IN
Definition: typedefs.h:38
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES IN DWORD Unknown3
Definition: conport.c:35
HANDLE gpidLogon
Definition: simplecall.c:15
NTSTATUS NTAPI IntWinStaObjectParse(_In_ PVOID Parameters)
Definition: winsta.c:136
struct _DESKTOP * ActiveDesktop
Definition: winsta.h:24
INT fInDelayedRendering
Definition: winsta.h:36
HWND hwndSAS
Definition: winsta.c:24
LONG NTSTATUS
Definition: precomp.h:26
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES IN DWORD IN DWORD IN DWORD IN DWORD Unknown6
Definition: conport.c:35
PWND spwndClipOwner
Definition: winsta.h:30
NTSTATUS FASTCALL IntCreateWindowStation(OUT HWINSTA *phWinSta, IN POBJECT_ATTRIBUTES ObjectAttributes, IN KPROCESSOR_MODE AccessMode, IN KPROCESSOR_MODE OwnerMode, IN ACCESS_MASK dwDesiredAccess, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5, DWORD Unknown6)
Definition: winsta.c:411
LIST_ENTRY DesktopListHead
Definition: winsta.h:18
#define FASTCALL
Definition: nt_native.h:50
int32_t INT
Definition: typedefs.h:56
WINSTATION_OBJECT * InputWindowStation
Definition: winsta.c:21
UNICODE_STRING gustrWindowStationsDir
Definition: winsta.c:27
PWND spwndClipViewer
Definition: winsta.h:29
PWND spwndClipOpen
Definition: winsta.h:28
LUID luidEndSession
Definition: winsta.h:39
Definition: clipboard.h:3
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
Definition: IoEaTest.cpp:117
BOOL FASTCALL co_IntInitializeDesktopGraphics(VOID)
Definition: winsta.c:260
VOID FASTCALL IntEndDesktopGraphics(VOID)
Definition: winsta.c:334
unsigned int BOOL
Definition: ntddk_ex.h:94
PRTL_UNICODE_STRING_BUFFER PULONG PULONG Unknown4
INT iClipSerialNumber
Definition: winsta.h:33
_In_ PEPROCESS _In_ KPROCESSOR_MODE AccessMode
Definition: mmfuncs.h:396
BOOL FASTCALL UserSetProcessWindowStation(HWINSTA hWindowStation)
Definition: winsta.c:1346
NTSTATUS NTAPI IntWinStaOkToClose(_In_ PVOID Parameters)
Definition: winsta.c:201
DWORD dwSessionId
Definition: winsta.h:16
NTSTATUS FASTCALL IntValidateWindowStationHandle(HWINSTA WindowStation, KPROCESSOR_MODE AccessMode, ACCESS_MASK DesiredAccess, PWINSTATION_OBJECT *Object, POBJECT_HANDLE_INFORMATION pObjectHandleInfo)
Definition: winsta.c:230
PTHREADINFO ptiClipLock
Definition: winsta.h:26
PCLIP pClipBase
Definition: winsta.h:31
unsigned long DWORD
Definition: ntddk_ex.h:95
struct _WINSTATION_OBJECT * PWINSTATION_OBJECT
CCHAR KPROCESSOR_MODE
Definition: ketypes.h:7
static IUnknown Object
Definition: main.c:512
struct _WINSTATION_OBJECT WINSTATION_OBJECT
NTSTATUS NTAPI IntWinStaObjectDelete(_In_ PVOID Parameters)
Definition: winsta.c:106
_In_ PPCI_DEVICE_PRESENCE_PARAMETERS Parameters
Definition: iotypes.h:872
DWORD cNumClipFormats
Definition: winsta.h:32
Definition: typedefs.h:117
struct atom_table ** PRTL_ATOM_TABLE
Definition: atom.c:43
#define _In_
Definition: no_sal2.h:204
Definition: ntuser.h:657
PTHREADINFO ptiDrawingClipboard
Definition: winsta.h:27
PRTL_ATOM_TABLE AtomTable
Definition: winsta.h:19
_In_ PIO_STACK_LOCATION _Inout_ PFILE_OBJECT _Inout_ PVCB _Outptr_result_maybenull_ PDCB _In_ PDCB _In_ PDIRENT _In_ ULONG _In_ ULONG _In_ PUNICODE_STRING _In_ PACCESS_MASK DesiredAccess
Definition: create.c:4157
PWND spwndClipboardListener
Definition: winsta.h:38
BOOL FASTCALL CheckWinstaAttributeAccess(ACCESS_MASK)
Definition: winsta.c:353
#define OUT
Definition: typedefs.h:39
unsigned int ULONG
Definition: retypes.h:1
PVOID psidUser
Definition: winsta.h:41
INIT_FUNCTION NTSTATUS NTAPI InitWindowStationImpl(VOID)
Definition: winsta.c:34
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES IN DWORD IN DWORD IN DWORD Unknown5
Definition: conport.c:35
INT iClipSequenceNumber
Definition: winsta.h:34
NTSTATUS NTAPI UserCreateWinstaDirectory(VOID)
Definition: winsta.c:51
HANDLE ShellListView
Definition: winsta.h:21
ULONG ACCESS_MASK
Definition: nt_native.h:40
HANDLE ShellWindow
Definition: winsta.h:20