Функция CredEnumerateW (wincred.h)

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

Синтаксис

BOOL CredEnumerateW(
  [in]  LPCWSTR      Filter,
  [in]  DWORD        Flags,
  [out] DWORD        *Count,
  [out] PCREDENTIALW **Credential
);

Параметры

[in] Filter

Указатель на строку, завершающуюся пустым значением, которая содержит фильтр для возвращенных учетных данных. Будут возвращены только учетные данные с именем TargetName , соответствующим фильтру. Фильтр задает префикс имени, за которым следует звездочка. Например, фильтр FRED*будет возвращать все учетные данные с TargetName , начинающийся со строки FRED.

Если задано значение NULL , будут возвращены все учетные данные.

[in] Flags

Значение этого параметра может быть равно нулю или более из следующих значений в сочетании с побитовой операцией ИЛИ .

Значение Значение
CRED_ENUMERATE_ALL_CREDENTIALS
0x1
Эта функция перечисляет все учетные данные в наборе учетных данных пользователя. Целевое имя каждой учетной записи возвращается в формате namespace:attribute=target. Если этот флаг установлен и параметр Filter не равен NULL, функция завершается ошибкой и возвращает ERROR_INVALID_FLAGS.

Windows Server 2003 и Windows XP: Этот флаг не поддерживается.

[out] Count

Количество учетных данных, возвращенных в массиве Учетные данные .

[out] Credential

Указатель на массив указателей на учетные данные. Возвращаемые учетные данные — это один выделенный блок. Все указатели, содержащиеся в буфере, являются указателями на расположения в пределах одного выделенного блока. Один возвращаемый буфер должен быть освобожден путем вызова CredFree.

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

Функция возвращает значение TRUE при успешном выполнении и FALSE при сбое. Для получения более конкретного кода состояния можно вызвать функцию GetLastError . Можно вернуть следующие коды состояния.

Возвращаемый код/значение Описание
ERROR_NOT_FOUND
1168 (0x490)
Учетные данные, соответствующие указанному фильтру, отсутствуют.
ERROR_NO_SUCH_LOGON_SESSION
1312 (0x520)
Сеанс входа не существует или с этим сеансом входа не связан набор учетных данных. Сеансы сетевого входа не имеют связанных учетных данных.
ERROR_INVALID_FLAGS
1004 (0x3EC)
Недопустимый флаг был указан для параметра Flags или CRED_ENUMERATE_ALL_CREDENTIALS указан для параметра Flags , а параметр Filter не имеет значения NULL.

Комментарии

Примечание

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

Требования

Требование Значение
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header wincred.h
Библиотека Advapi32.lib
DLL Advapi32.dll

См. также раздел

CredFree

Getlasterror