ImageEnumerateCertificates 函数 (imagehlp.h)

检索有关映像文件中当前包含的证书的信息。

语法

BOOL IMAGEAPI ImageEnumerateCertificates(
  [in]           HANDLE FileHandle,
  [in]           WORD   TypeFilter,
  [out]          PDWORD CertificateCount,
  [in, out]      PDWORD Indices,
  [in, optional] DWORD  IndexCount
);

parameters

[in] FileHandle

要检查的图像文件的句柄。 必须打开此句柄才能FILE_READ_DATA访问。

[in] TypeFilter

返回证书信息时要用作筛选器的证书节类型。 应传递CERT_SECTION_TYPE_ANY,以获取有关图像中存在的所有节类型的信息。

[out] CertificateCount

指向变量的指针,该变量接收映像中包含 TypeFilter 参数所指定类型的部分的证书数。 如果未找到任何值,则此参数为零。

[in, out] Indices

(可选)提供一个缓冲区,用于将索引数组返回到包含指定类型的节的证书。 不应对索引值进行排序,也不保证在查询CERT_SECTION_TYPE_ANY时它们是连续的。

[in, optional] IndexCount

索引缓冲区的大小(以 DWORD 为单位)。 只要存在 索引 ,就会检查此参数。 如果 CertificateCount 大于 IndexCount,将使用图像中找到的第一个 IndexCount 部分填充索引;不会返回任何其他内容。

返回值

如果函数成功,则返回值为 TRUE

如果函数失败,则返回值为 FALSE。 若要检索扩展的错误信息,请调用 GetLastError

注解

ImageEnumerateCertificates 函数返回有关当前包含在映像文件中的证书的信息。 它具有筛选功能,允许返回包含任何单一类型 (或任何类型的) 部分的证书。

发现相关证书的索引后,可以将其传递给 ImageGetCertificateData 函数,以获取证书的实际正文。

所有 ImageHlp 函数(例如此函数)都是单线程函数。 因此,从多个线程调用此函数可能会导致意外行为或内存损坏。 若要避免这种情况,必须将多个线程中的所有并发调用同步到此函数。

要求

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

另请参阅

ImageGetCertificateData

ImageHlp 函数