Функция BCryptSetProperty (bcrypt.h)

Функция BCryptSetProperty задает значение именованного свойства для объекта CNG.

Синтаксис

NTSTATUS BCryptSetProperty(
  [in, out] BCRYPT_HANDLE hObject,
  [in]      LPCWSTR       pszProperty,
  [in]      PUCHAR        pbInput,
  [in]      ULONG         cbInput,
  [in]      ULONG         dwFlags
);

Параметры

[in, out] hObject

Дескриптор, представляющий объект CNG для задания значения свойства.

[in] pszProperty

Указатель на строку Юникода, завершающую значение NULL, которая содержит имя заданного свойства. Это может быть один из стандартных идентификаторов примитивных свойств криптографии или идентификатор пользовательского свойства.

[in] pbInput

Адрес буфера, содержащего новое значение свойства. Параметр cbInput содержит размер этого буфера.

[in] cbInput

Размер pbInput буфера в байтах.

[in] dwFlags

Набор флагов, изменяющих поведение этой функции. Для этой функции флаги не определены.

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

Возвращает код состояния, указывающий на успешность или сбой функции.

Возможные коды возврата включают в себя, но не ограничиваются следующими.

Возвращаемый код Описание
STATUS_SUCCESS
Функция была успешной.
STATUS_INVALID_HANDLE
Дескриптор в параметре hObject недопустим.
STATUS_INVALID_PARAMETER
Один или несколько параметров недопустимы.
STATUS_NOT_SUPPORTED
Именованное свойство, указанное параметром pszProperty, не поддерживается или доступно только для чтения.

Замечания

В зависимости от того, какие режимы процессора поддерживает поставщик, BCryptSetProperty можно вызывать из пользовательского режима или режима ядра. Вызывающие серверы режима ядра могут выполняться в PASSIVE_LEVELIRQL или DISPATCH_LEVEL IRQL. Если текущий уровень IRQL DISPATCH_LEVEL, все указатели, передаваемые в BCryptSetProperty, должны ссылаться на неупакованную (или заблокированную) память. Если объект, указанный в параметре hObject, является дескриптором, он должен быть открыт с помощью флага BCRYPT_PROV_DISPATCH.

Чтобы вызвать эту функцию в режиме ядра, используйте Cng.lib, которая входит в состав пакета средств разработки драйверов (DDK). Windows Server 2008 и Windows Vista: для вызова этой функции в режиме ядра используйте Ksecdd.lib.

При задании значения свойства BCRYPT_CHAINING_MODEпараметр pbInput не связан cbInput. Вызывающий объект должен убедиться, что указана допустимая строка Юникода, завершающая значение NULL.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows Vista [классические приложения | Приложения UWP]
минимальный поддерживаемый сервер Windows Server 2008 [классические приложения | Приложения UWP]
целевая платформа Виндоус
заголовка bcrypt.h
библиотеки Bcrypt.lib
DLL Bcrypt.dll