This is a list of the object type-specific access types defined for each of the USER32 objects:
WindowStation Object
WINSTA_ACCESSCLIPBOARD | (Implied by GenericWrite) This access type is needed to utilize the clipboard. |
WINSTA_CREATEDESKTOP | (Implied by GenericWrite) This access type is needed to create new Desktop objects on the WindowStation. |
WINSTA_ENUMDESKTOPS | (Implied by GenericRead) This access type is needed to enumerate existing desktop objects. |
WINSTA_READATTRIBUTES | (Implied by GenericRead) This access type is needed to read the attributes of a WindowStation object. The attributes include: color settings and other global windowstation properties. |
WINSTA_WRITEATTRIBUTES | (Implied by GenericWrite) This access type is needed to modify the attributes of a WindowStation object. The attributes include: color settings and other global windowstation properties. |
WINSTA_ACCESSGLOBALATOMS | (Implied by GenericExecute) This access type is needed to create/read/write/destroy global atoms. |
WINSTA_ENUMERATE | (Implied by GenericRead) This access type is needed for the windowstation to be enumerated. |
WINSTA_READSCREEN | (Implied by GenericRead) This access type is needed to access screen contents. |
WINSTA_EXITWINDOWS | (Implied by GenericExecute) This access type is needed to successfully call ExitWindows . Windowstations can be shared between users and this access type can be used to prevent other users of a windowstation from logging off the windowstation owner. |
Desktop Object
DESKTOP_CREATEWINDOW | (Implied by GenericWrite) This access type is needed to create a window associated with the desktop. |
DESKTOP_CREATEMENU | (Implied by GenericWrite) This access type is needed to create a menu associated with the desktop. |
DESKTOP_ENUMWINDOWS | (Implied by GenericRead) This access type is needed to enumerate window objects created by other processes. |
DESKTOP_HOOKCONTROL | (Implied by GenericWrite) This access type is needed to establish any of the window hooks on a queue belonging to another thread or to establish a system-level hook. |
DESKTOP_JOURNALRECORD | (Implied by GenericWrite) This access type is needed to perform journal recording. |
DESKTOP_JOURNALPLAYBACK | (Implied by GenericWrite) This access type is needed to perform journal playback. |
DESKTOP_ENUMERATE | (Implied by GenericRead) This access type is needed for the desktop to be enumerated. |
Window Object
WIN_ACCESSWINDOW | (Implied by GenericExecute) This access type is needed to perform any window operation. |
WIN_ENUMERATE | (Implied by GenericRead) This access type is needed for the window to be enumerated by processes other than the creating process. |
Menu Object
MENU_ACCESSMENU | (Implied by GenericExecute) This access type is needed to perform any menu operation. |
DDE Access and Conversation Objects
DDE_ADVISE | (Implied by GenericRead) This access type is needed for a DDE client to begin an advise loop. |
DDE_EXECUTE | (Implied by GenericExecute) This access type is needed for a DDE client to execute a command on a DDE server. |
DDE_POKE | (Implied by GenericWrite) This access type is needed for a DDE client to write data to a DDE server. |
DDE_REQUEST | (Implied by GenericRead) This access type is needed for a DDE client to get data from a DDE server. |