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. |