Функция CreateWindowStationA (winuser.h)
Создает объект станции окна, связывает его с вызывающим процессом и назначает его текущему сеансу.
Синтаксис
HWINSTA CreateWindowStationA(
[in, optional] LPCSTR 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, и сочетание прав доступа для конкретной станции окна. Дополнительные сведения см. в "Безопасность и доступ к станции окон".
[in, optional] lpsa
Указатель на структуру SECURITY_ATTRIBUTES, которая определяет, может ли возвращаемый дескриптор наследоваться дочерними процессами. Если lpsaNULL, то дескриптор нельзя наследовать.
Элемент
Возвращаемое значение
Если функция выполнена успешно, возвращаемое значение является дескриптором созданной станции окон. Если указанная станция окон уже существует, функция завершается успешно и возвращает дескриптор существующей станции окон.
Если функция завершается ошибкой, возвращаемое значение равно NULL. Чтобы получить расширенные сведения об ошибке, вызовите GetLastError.
Замечания
После завершения работы с дескриптором необходимо вызвать CloseWindowStation, чтобы освободить дескриптор.
Заметка
Заголовок winuser.h определяет CreateWindowStation как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 2000 Профессиональный [только классические приложения] |
минимальный поддерживаемый сервер | Windows 2000 Server [только классические приложения] |
целевая платформа | Виндоус |
заголовка | winuser.h (включая Windows.h) |
библиотеки |
User32.lib |
DLL | User32.dll |
набор API | ext-ms-win-ntuser-windowstation-l1-1-0 (представлено в Windows 8) |
См. также
станции окон