Функция CreateWindowStationW (winuser.h)
Создает объект оконной станции, связывает его с вызывающим процессом и назначает его текущему сеансу.
Синтаксис
HWINSTA CreateWindowStationW(
[in, optional] LPCWSTR lpwinsta,
DWORD dwFlags,
[in] ACCESS_MASK dwDesiredAccess,
[in, optional] LPSECURITY_ATTRIBUTES lpsa
);
Параметры
[in, optional] lpwinsta
Имя создаваемой оконной станции. Имена оконных станций не учитывают регистр и не могут содержать символы обратной косой черты (\). Только участникам группы Администраторы разрешено указывать имя. Если lpwinsta имеет значение NULL или пустую строку, система формирует имя станции окна, используя идентификатор сеанса входа в вызывающий процесс. Чтобы получить это имя, вызовите функцию GetUserObjectInformation .
dwFlags
Если этот параметр имеет значение CWF_CREATE_ONLY и оконная станция уже существует, вызов завершается ошибкой. Если этот флаг не указан и оконная станция уже существует, функция выполняется успешно и возвращает новый дескриптор существующей оконной станции.
Windows XP/2000: Этот параметр зарезервирован и должен быть равен нулю.
[in] dwDesiredAccess
Тип доступа возвращенного дескриптора к оконной станции. Кроме того, можно указать любое из стандартных прав доступа, например READ_CONTROL или WRITE_DAC, а также сочетание прав доступа для оконной станции. Дополнительные сведения см. в разделе Window Station Security and Access Rights.
[in, optional] lpsa
Указатель на структуру SECURITY_ATTRIBUTES , которая определяет, может ли возвращенный дескриптор наследоваться дочерними процессами. Если lpsa имеет значение NULL, дескриптор не может быть унаследован.
Элемент lpSecurityDescriptor структуры задает дескриптор безопасности для новой оконной станции. Если lpsa имеет значение NULL, оконная станция (и все рабочие столы, созданные в окне) получает дескриптор безопасности, который предоставляет доступ GENERIC_ALL всем пользователям.
Возвращаемое значение
Если функция выполняется успешно, возвращаемое значение является дескриптором для только что созданной оконной станции. Если указанная оконная станция уже существует, функция выполняется успешно и возвращает дескриптор существующей оконной станции.
Если функция завершается сбоем, возвращается значение NULL. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.
Комментарии
После завершения работы с дескриптором необходимо вызвать CloseWindowStation , чтобы освободить дескриптор.
Примечание
Заголовок winuser.h определяет CreateWindowStation в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Использование псевдонима, не зависящий от кодирования, с кодом, который не является нейтральным для кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или времени выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | winuser.h (включая Windows.h) |
Библиотека | User32.lib |
DLL | User32.dll |
Набор API | ext-ms-win-ntuser-windowstation-l1-1-0 (представлено в Windows 8) |
См. также раздел
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по