CertEnumSubjectInSortedCTL 函数 (wincrypt.h)

CertEnumSubjectInSortedCTL 函数检索排序证书信任列表中的第一个或下一个 TrustedSubject (CTL) 。 排序的 CTL 是使用CERT_CREATE_CONTEXT_SORTED_FLAG集创建的 CTL。 在循环中使用,此函数可以按顺序检索排序 CTL 中的所有 TrustedSubject。

语法

BOOL CertEnumSubjectInSortedCTL(
  [in]      PCCTL_CONTEXT   pCtlContext,
  [in, out] void            **ppvNextSubject,
  [out]     PCRYPT_DER_BLOB pSubjectIdentifier,
  [out]     PCRYPT_DER_BLOB pEncodedAttributes
);

参数

[in] pCtlContext

指向要搜索 的CTL_CONTEXT 结构的指针。

[in, out] ppvNextSubject

指向找到的最后一个 TrustedSubject 地址的指针。 若要启动枚举, ppvNextSubject 必须指向设置为 NULL 的指针。 返回后, ppvNextSubject 寻址的指针将更新为指向编码序列中的下一个 TrustedSubject。

[out] pSubjectIdentifier

指向 CRYPT_DER_BLOB 结构的指针,唯一标识 TrustedSubject。 此结构中的信息可以是哈希或任何唯一的字节序列。

[out] pEncodedAttributes

指向包含字节计数和 TrustedSubject 编码属性的指针的 CRYPT_DER_BLOB 结构的指针。

返回值

如果函数成功,则返回值为 TRUEppvNextSubject 更新为指向编码序列中的下一个 TrustedSubject。

如果函数失败,则返回值为 FALSE。 如果没有更多主题或参数无效,则返回值为 FALSE

注解

CRYPT_DER_BLOB 结构的 pbData 成员直接指向编码的字节。 CRYPT_DER_BLOB结构本身必须由应用程序分配和释放,但由这些结构的 pbData 成员寻址的内存不是由应用程序分配的,并且不能由应用程序释放。

如果未使用设置CERT_CREATE_CONTEXT_SORTED_FLAG标志对 CTL 进行排序,则会导致错误。

要求

   
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 wincrypt.h
Library Crypt32.lib
DLL Crypt32.dll

另请参阅

CTL_CONTEXT

CertFindSubjectInSortedCTL

证书和证书存储维护功能