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

QuickInfo

  Windows NT: Requires version 3.51 or later.
  Windows: Unsupported.
  Windows CE: Unsupported.
  Header: Declared in winuser.h.
  Import Library: Use user32.lib.
  Unicode: Implemented as Unicode and ANSI versions on Windows NT.

See Also

Window Stations and Desktops Overview, Window Station and Desktop Functions, ExitWindows, ExitWindowsEx