Функция GetUserNameExW (secext.h)
Извлекает имя пользователя или другого субъекта безопасности, связанного с вызывающим потоком. Можно указать формат возвращаемого имени.
Если поток олицетворение клиента, GetUserNameEx возвращает имя клиента.
Синтаксис
BOOLEAN SEC_ENTRY GetUserNameExW(
[in] EXTENDED_NAME_FORMAT NameFormat,
[out] LPWSTR lpNameBuffer,
[in, out] PULONG nSize
);
Параметры
[in] NameFormat
Формат имени. Этот параметр является значением из типа перечисления EXTENDED_NAME_FORMAT . Он не может быть NameUnknown. Если учетная запись пользователя не находится в домене, поддерживается только NameSamCompatible .
[out] lpNameBuffer
Указатель на буфер, получающий имя в указанном формате. Буфер должен содержать пробел для завершающего символа NULL.
[in, out] nSize
На входных данных эта переменная указывает размер буфера lpNameBuffer в TCHAR. Если функция выполнена успешно, переменная получает количество TCHAR , скопированных в буфер, не включая завершающий символ NULL.
Если значение lpNameBuffer слишком мало, функция завершается сбоем и GetLastError возвращает ERROR_MORE_DATA. Этот параметр получает требуемый размер буфера в символах Юникода (независимо от того, используется ли Юникод), включая завершающий символ NULL.
Возвращаемое значение
Если функция выполнена успешно, возвращаемое значение будет ненулевым.
Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError. Ниже приведены возможные значения.
Код возврата | Описание |
---|---|
|
Буфер lpNameBuffer слишком мал. Параметр lpnSize содержит количество байтов, необходимых для получения имени. |
|
Контроллер домена недоступен для выполнения поиска |
|
Имя пользователя недоступно в указанном формате. |
Комментарии
Примечание
Заголовок secext.h определяет GetUserNameEx как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | secext.h (включая Security.h) |
Библиотека | Secur32.lib |
DLL | Secur32.dll |