Функция CertSelectionGetSerializedBlob (cryptuiapi.h)

Функция CertSelectionGetSerializedBlob является вспомогательной функцией, используемой для получения сериализованного большого двоичного объекта сертификата из структуры CERT_SELECTUI_INPUT .

Синтаксис

HRESULT CertSelectionGetSerializedBlob(
  [in]  PCERT_SELECTUI_INPUT pcsi,
  [out] void                 **ppOutBuffer,
  [out] ULONG                *pulOutBufferSize
);

Параметры

[in] pcsi

Указатель на структуру CERT_SELECTUI_INPUT , содержащую сведения о хранилище сертификатов и цепочке контекста сертификатов.

[out] ppOutBuffer

Адрес указателя на буфер, который получает большой двоичный объект сериализованных сертификатов.

[out] pulOutBufferSize

Указатель на ULONG для получения размера большого двоичного объекта в байтах, полученного в буфере, на который указывает параметр ppOutBuffer .

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

Если функция выполнена успешно, функция возвращает S_OK.

Если функция завершается сбоем, она возвращает значение HRESULT , указывающее на ошибку. Если параметры hStore и prgpChain не имеют значения NULL, возвращается E_INVALIDARG. Список распространенных кодов ошибок см. в разделе Общие значения HRESULT.

Комментарии

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

Сертификаты, сериализуемые в большом двоичном объекте, возвращаемом в буфере, на который указывает параметр ppOutBuffer этой функции, зависят от значений членов hStore и prgpChainструктуры CERT_SELECTUI_INPUT .

hStore prgpChain Сериализованные сертификаты
NULL не NULL Сертификаты, на которые указывает член prgpChain , сериализуются.
не NULL NULL Сертификаты, указанные членом hStore , сериализуются.
NULL NULL Возвращается пустой BLOB-объект.
не NULL не NULL Вызов завершается ошибкой, и функция возвращает E_INVALIDARG.

Требования

Требование Значение
Минимальная версия клиента Windows 7 [только классические приложения]
Минимальная версия сервера Windows Server 2008 R2 [только классические приложения]
Целевая платформа Windows
Header cryptuiapi.h
DLL Cryptui.dll