Функция 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
Структура SID , идентифицирующая пользователя, который в настоящее время связан с указанным объектом. Если с объектом не связан ни один пользователь, значение, возвращаемое в буфере, на который указывает lpnLengthNeeded, равно нулю. Обратите внимание, что SID — это структура переменной длины. Обычно вы вызываете GetUserObjectInformation , чтобы определить длину идентификатора безопасности перед получением его значения.

[out, optional] pvInfo

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

[in] nLength

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

[out, optional] lpnLengthNeeded

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

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

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

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

Комментарии

Примечание

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

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header 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

Функции оконных станций и настольных компьютеров