CreateDesktop
The CreateDesktop
function creates a new desktop on the window station associated with the
calling process. It returns a handle that can be used to access the new
desktop. The calling process must have an associated window station, either
assigned by the system at process creation time or set by SetProcessWindowStation
HDESK CreateDesktop(
LPCTSTR lpszDesktop, |
// name of the new
desktop |
LPCTSTR lpszDevice, |
// reserved; must
be NULL. |
LPDEVMODE pDevMode, |
// reserved; must
be NULL |
DWORD dwFlags, |
// flags to control
interaction with other applications |
DWORD dwDesiredAccess, |
// specifies access
of returned handle |
LPSECURITY_ATTRIBUTES lpsa |
// specifies
security attributes of the desktop |
); |
|
Parameters
lpszDesktop
Points to a
null-terminated string specifying the name of the desktop to be created.
Desktop names are case-insensitive and may not contain backslash characters
(\).
lpszDevice
Reserved;
must be NULL. The desktop uses the default display driver loaded at boot time.
pDevMode
Reserved;
must be NULL.
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. |
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 the SwitchDesktopIILWPZ function. |
DESKTOP_WRITEOBJECTS |
Required to
write objects on the desktop. |
lpsa
Pointer to a SECURITY_ATTRIBUTES
Windows NT:
The lpSecurityDescriptor member of the structure specifies a security
descriptor for the new desktop. If lpsa is NULL, the desktop inherits
its security descriptor from the parent window station.
Windows 95:
The lpSecurityDescriptor member of the structure is ignored.
Return Values
If the
function succeeds, the return value is a handle to the newly created desktop.
If the
function fails, the return value is NULL. To get extended error information,
call GetLastError
Remarks
The
CreateDesktop function returns a handle that can be used to access the
desktop.
See Also