CertSelectionGetSerializedBlob 函数 (cryptuiapi.h)

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

语法

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 非 null 将序列化 prgpChain 成员指向的证书。
非 null NULL 由 hStore 成员指定的证书将序列化。
NULL NULL 返回空 BLOB。
非 null 非 null 调用失败,函数返回 E_INVALIDARG

要求

要求
最低受支持的客户端 Windows 7 [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 R2 [仅限桌面应用]
目标平台 Windows
标头 cryptuiapi.h
DLL Cryptui.dll