The OpenInputDesktop function returns a handle to the desktop that receives user input. The input desktop is a desktop on the window station associated with the logged-on user.
HDESK OpenInputDesktop(
DWORD dwFlags, | // flags to control interaction with other applications |
BOOL fInherit, | // specifies whether returned handle is inheritable |
DWORD dwDesiredAccess | // specifies access of returned handle |
); |
Parameters
dwFlags
A bit flag parameter that controls how the calling application will cooperate with other applications on the desktop. This parameter can specify zero or the following value:
Value | Description |
DF_ALLOWOTHERACCOUNTHOOK | Allows processes running in other accounts on the desktop to set hooks in this process. |
fInherit
Specifies whether the returned handle is inherited when a new process is created. If this value is TRUE, new processes will inherit the handle.
dwDesiredAccess
Specifies the type of access to the desktop. This parameter can be one or more of the following values:
Value | Description |
DESKTOP_CREATEMENU | Required to create a menu on the desktop. |
DESKTOP_CREATEWINDOW | Required to create a window on the desktop. |
DESKTOP_ENUMERATE | Required for the desktop to be enumerated. |
DESKTOP_HOOKCONTROL | Required to establish any of the window hooks. |
DESKTOP_JOURNALPLAYBACK | Required to perform journal playback on the desktop. |
DESKTOP_JOURNALRECORD | Required to perform journal recording on the desktop. |
DESKTOP_READOBJECTS | Required to read objects on the desktop. |
DESKTOP_SWITCHDESKTOP | Required to activate the desktop using SwitchDesktop. |
DESKTOP_WRITEOBJECTS | Required to write objects on the desktop. |
Return Values
If the function succeeds, the return value is a handle of the desktop that receives user input.
If the function fails, the return value is NULL. To get extended error information, call GetLastError.
Remarks
The calling process must have an associated window station, either assigned by the system at process creation time or set by SetProcessWindowStation The window station associated with the calling process must be capable of receiving input.
An application can use the SwitchDesktop function to change the input desktop.
See Also