Функция NCryptEnumAlgorithms (ncrypt.h)
Функция NCryptEnumAlgorithms получает имена алгоритмов, поддерживаемых указанным поставщиком хранилища ключей.
Синтаксис
SECURITY_STATUS NCryptEnumAlgorithms(
[in] NCRYPT_PROV_HANDLE hProvider,
[in] DWORD dwAlgOperations,
[out] DWORD *pdwAlgCount,
[out] NCryptAlgorithmName **ppAlgList,
[in] DWORD dwFlags
);
Параметры
[in] hProvider
Дескриптор поставщика хранилища ключей для перечисления алгоритмов. Этот дескриптор получается с помощью функции NCryptOpenStorageProvider .
[in] dwAlgOperations
Набор значений, определяющих классы алгоритма для перечисления. Это может быть ноль или сочетание одного или нескольких из следующих значений. Если dwAlgOperations равно нулю, перечисляются все алгоритмы.
[out] pdwAlgCount
Адрес DWORD , получающего количество элементов в массиве ppAlgList .
[out] ppAlgList
Адрес указателя структуры NCryptAlgorithmName , который получает массив зарегистрированных имен алгоритмов. Переменная, на которую указывает параметр pdwAlgCount, получает количество элементов в этом массиве.
Если эта память больше не требуется, ее необходимо освободить, передав указатель на функцию NCryptFreeBuffer .
[in] dwFlags
Флаги, изменяющие поведение функции. Это может быть ноль (0) или следующее значение.
Возвращаемое значение
Возвращает код состояния, указывающий на успешное или неудачное выполнение функции.
Возможные коды возврата включают, помимо прочего, следующие.
Код возврата | Описание |
---|---|
|
Функция выполнена успешно. |
|
Параметр dwFlags содержит недопустимое значение. |
|
Недопустимый параметр hProvider . |
|
Один или несколько параметров недопустимы. |
|
Произошел сбой выделения памяти. |
Комментарии
Служба не должна вызывать эту функцию из функции StartService. Если служба вызывает эту функцию из функции StartService, может возникнуть взаимоблокировка, и служба может перестать отвечать.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2008 [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | ncrypt.h |
Библиотека | Ncrypt.lib |
DLL | Ncrypt.dll |