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


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

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

Синтаксис

BOOL CredEnumerateA(
  [in]  LPCSTR       Filter,
  [in]  DWORD        Flags,
  [out] DWORD        *Count,
  [out] PCREDENTIALA **Credential
);

Параметры

[in] Filter

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

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

[in] Flags

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

Ценность Значение
CRED_ENUMERATE_ALL_CREDENTIALS
0x1
Эта функция перечисляет все учетные данные в наборе учетных данных пользователя. Целевое имя каждого учетных данных возвращается в формате namespace:attribute=target. Если этот флаг задан, а параметр фильтра не 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)
Недопустимый флаг для параметра флагов или CRED_ENUMERATE_ALL_CREDENTIALS указан для параметра флагов , а параметр фильтра не NULL.

Замечания

Заметка

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

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows XP [только классические приложения]
минимальный поддерживаемый сервер Windows Server 2003 [только классические приложения]
целевая платформа Виндоус
заголовка wincred.h
библиотеки Advapi32.lib
DLL Advapi32.dll

См. также

CredFree

GetLastError