OpenWindowStation

The OpenWindowStation function returns a handle to an existing window station.

HWINSTA OpenWindowStation(

LPTSTR lpszWinSta, // name of the window station to open
BOOL fInherit, // specifies whether returned handle is inheritable
DWORD dwDesiredAccess // specifies access of returned handle
);  

Parameters

lpszWinSta

Points to a null-terminated string specifying the name of the window station to be opened. Window station names are case-insensitive.

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 window station. This parameter can be one or more of the following values:

Value Description
WINSTA_ACCESSCLIPBOARD Required to use the clipboard.
WINSTA_ACCESSGLOBALATOMS Required to manipulate global atoms.
WINSTA_CREATEDESKTOP Required to create new desktop objects on the window station.
WINSTA_ENUMDESKTOPS Required to enumerate existing desktop objects.
WINSTA_ENUMERATE Required for the window station to be enumerated.
WINSTA_EXITWINDOWS Required to successfully call the ExitWindows and ExitWindowsEx functions.
WINSTA_READATTRIBUTES Required to read the attributes of a window station object.
WINSTA_READSCREEN Required to access screen contents.
WINSTA_WRITEATTRIBUTES Required to modify the attributes of a window station object.

Return Values

If the function succeeds, the return value is the handle to the specified window station.

If the function fails, the return value is NULL. To get extended error information, call GetLastError.

See Also

ExitWindows, ExitWindowsEx