Функция LookupAccountNameA (winbase.h)
Функция LookupAccountName принимает имя системы и учетной записи в качестве входных данных. Он получает идентификатор безопасности (SID) для учетной записи и имя домена, в котором была найдена учетная запись.
Функция LsaLookupNames
Синтаксис
BOOL LookupAccountNameA(
[in, optional] LPCSTR lpSystemName,
[in] LPCSTR lpAccountName,
[out, optional] PSID Sid,
[in, out] LPDWORD cbSid,
[out, optional] LPSTR ReferencedDomainName,
[in, out] LPDWORD cchReferencedDomainName,
[out] PSID_NAME_USE peUse
);
Параметры
[in, optional] lpSystemName
Указатель на строку символов, завершающую null, которая указывает имя системы. Эта строка может быть именем удаленного компьютера. Если эта строка null, то в локальной системе начинается преобразование имени учетной записи. Если имя не удается разрешить в локальной системе, эта функция попытается разрешить имя с помощью контроллеров домена, доверенных локальной системой. Как правило, укажите значение для lpSystemName только в том случае, если учетная запись находится в недоверенном домене, а имя компьютера в этом домене известно.
[in] lpAccountName
Указатель на строку null-terminated, указывающую имя учетной записи.
Используйте полную строку в формате domain_name\user_name, чтобы убедиться, что LookupAccountName находит учетную запись в нужном домене.
[out, optional] Sid
Указатель на буфер, который получает структуру идентификатора безопасности
[in, out] cbSid
Указатель на переменную. В входных данных это значение указывает размер буфера sid в байтах. Если функция завершается ошибкой, так как буфер слишком мал или если cbSid равно нулю, эта переменная получает требуемый размер буфера.
[out, optional] ReferencedDomainName
Указатель на буфер, получающий имя домена, в котором находится имя учетной записи. Для компьютеров, которые не присоединены к домену, этот буфер получает имя компьютера. Если этот параметр null, функция возвращает требуемый размер буфера.
[in, out] cchReferencedDomainName
Указатель на переменную. При входных данных это значение указывает размер в
[out] peUse
Указатель на SID_NAME_USE перечислимый тип, указывающий тип учетной записи при возврате функции.
Возвращаемое значение
Если функция выполнена успешно, функция возвращает ненулевое значение.
Если функция завершается ошибкой, она возвращает ноль. Для получения расширенных сведений об ошибке вызовите GetLastError.
Замечания
Функция LookupAccountName пытается найти идентификатор безопасности для указанного имени, сначала проверив список известных идентификаторов SID. Если имя не соответствует хорошо известному идентификатору безопасности, функция проверяет встроенные и административные локальные учетные записи. Затем функция проверяет основной домен. Если имя не найдено, проверяются доверенные домены.
Используйте полные имена учетных записей (например, domain_name\user_name) вместо изолированных имен (например, user_name). Полные имена являются однозначной и обеспечивают более высокую производительность при выполнении поиска. Эта функция также поддерживает полные DNS-имена (например, example.example.com\user_name) и имена субъектов-пользователей (например, someone@example.com).
Помимо поиска локальных учетных записей, учетных записей локального домена и явным образом доверенных учетных записей домена, LookupAccountName могут искать имя любой учетной записи в любом домене в лесу.
Заметка
Заголовок winbase.h определяет LookupAccountName как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows XP [классические приложения | Приложения UWP] |
минимальный поддерживаемый сервер | Windows Server 2003 [классические приложения | Приложения UWP] |
целевая платформа | Виндоус |
заголовка | winbase.h (включая Windows.h) |
библиотеки |
Advapi32.lib |
DLL | Advapi32.dll |
См. также
Обзор