CertSelectionGetSerializedBlob 函数 (cryptuiapi.h)

CertSelectionGetSerializedBlob 函数是一个帮助程序函数,用于从CERT_SELECTUI_INPUT结构中检索序列化的证书 BLOB

Syntax

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

参数

[in] pcsi

指向包含证书存储和证书上下文链信息的 CERT_SELECTUI_INPUT 结构的指针。

[out] ppOutBuffer

指向接收序列化证书 BLOB 的缓冲区的指针的地址。

[out] pulOutBufferSize

指向 ULONG 的指针,用于接收 ppOutBuffer 参数指向的缓冲区中收到的 BLOB 的大小(以字节为单位)。

返回值

如果函数成功,该函数将返回 S_OK

如果函数失败,它将返回指示错误的 HRESULT 值。 如果 hStoreprgpChain 参数都不是 NULL,则返回 E_INVALIDARG。 有关常见错误代码的列表,请参阅 通用 HRESULT 值

注解

返回的序列化 BLOB 将传递给 pvInAuthBuffer 参数中的 CredUIPromptForWindowsCredentials 函数,以允许用户使用凭据选择 UI 选择证书。

此函数的 ppOutBuffer 参数指向的缓冲区中序列化的 BLOB 中序列化的证书取决于CERT_SELECTUI_INPUT结构的 hStoreprgpChain 成员的值。

hStore prgpChain 序列化的证书
NULL not NULL prgpChain 成员指向的证书已序列化。
not NULL NULL 由 hStore 成员指定的证书已序列化。
NULL NULL 返回一个空 BLOB。
not NULL not NULL 调用失败,函数返回 E_INVALIDARG

要求

Requirement 价值
最低支持的客户端 Windows 7 [仅限桌面应用]
支持的最低服务器 Windows Server 2008 R2 [仅限桌面应用]
目标平台 Windows操作系统
Header cryptuiapi.h
Library cryptui.lib
DLL Cryptui.dll