Поделиться через


Функция GetUserObjectInformationA (winuser.h)

Извлекает сведения о указанной станции окон или классическом объекте.

Синтаксис

BOOL GetUserObjectInformationA(
  [in]            HANDLE  hObj,
  [in]            int     nIndex,
  [out, optional] PVOID   pvInfo,
  [in]            DWORD   nLength,
  [out, optional] LPDWORD lpnLengthNeeded
);

Параметры

[in] hObj

Дескриптор для станции окна или объекта рабочего стола. Этот дескриптор возвращается функцией CreateWindowStation, OpenWindowStation, CreateDesktopили OpenDesktop.

[in] nIndex

Извлекаемая информация. Параметр может быть одним из следующих значений.

Ценность Значение
UOI_FLAGS
1
Флаги дескриптора. Параметр pvInfo должен указывать на структуру USEROBJECTFLAGS .
UOI_HEAPSIZE
5
Размер кучи рабочего стола в КБ в виде значения ULONG. Параметр hObj должен быть дескриптором для классического объекта, в противном случае функция завершается ошибкой.

Windows Server 2003 и Windows XP/2000: это значение не поддерживается.

UOI_IO
6
TRUE, если параметр hObj является дескриптором для классического объекта, получающего входные данные от пользователя. FALSE в противном случае.

Windows Server 2003 и Windows XP/2000: это значение не поддерживается.

UOI_NAME
2
Имя объекта в виде строки.
UOI_TYPE
3
Имя типа объекта в виде строки.
UOI_USER_SID
4
Структура идентификатора безопасности , идентифицирующая пользователя, связанного с указанным объектом. Если пользователь не связан с объектом, значение, возвращаемое в буфере, указываемое lpnLengthNeeded равно нулю. Обратите внимание, что sid — это структура переменной длины. Обычно вызов GetUserObjectInformation, чтобы определить длину SID перед получением его значения.

[out, optional] pvInfo

Указатель на буфер для получения сведений об объекте.

[in] nLength

Размер буфера, на который указывает параметр pvInfo в байтах.

[out, optional] lpnLengthNeeded

Указатель на переменную, получая количество байтов, необходимых для хранения запрошенных сведений. Если значение этой переменной больше значения параметра nLength при возврате функции, функция возвращает значение FALSE, а ни одна информация не копируется в буфер pvInfo. Если значение переменной, на которую указывает lpnLengthNeededed, меньше или равно значению nLength, копируется весь блок информации.

Возвращаемое значение

Если функция выполнена успешно, возвращаемое значение ненулевое.

Если функция завершается ошибкой, возвращаемое значение равно нулю. Чтобы получить расширенные сведения об ошибке, вызовите GetLastError.

Замечания

Заметка

Заголовок winuser.h определяет GetUserObjectInformation как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 2000 Профессиональный [только классические приложения]
минимальный поддерживаемый сервер Windows 2000 Server [только классические приложения]
целевая платформа Виндоус
заголовка winuser.h (включая Windows.h)
библиотеки User32.lib
DLL User32.dll
набор API ext-ms-win-ntuser-windowstation-ansi-l1-1-0 (представлено в Windows 10 версии 10.0.10240)

См. также

CreateDesktop

CreateWindowStation

GetUserObjectSecurity

OpenDesktop

OpenWindowStation

SID

SetUserObjectInformation

SetUserObjectSecurity

USEROBJECTFLAGS

станции окон оконных станций и рабочих столов