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 |