ImageGetCertificateData 函数 (imagehlp.h)
从文件检索完整的证书。
语法
BOOL IMAGEAPI ImageGetCertificateData(
[in] HANDLE FileHandle,
[in] DWORD CertificateIndex,
[out] LPWIN_CERTIFICATE Certificate,
[in, out] PDWORD RequiredLength
);
参数
[in] FileHandle
图像文件的句柄。 必须打开此句柄才能 FILE_READ_DATA 访问。
[in] CertificateIndex
要返回的证书的索引。
[out] Certificate
指向接收证书数据的 WIN_CERTIFICATE 结构的指针。 如果缓冲区的大小不足以包含 结构,则函数将失败,最后一个错误代码设置为 ERROR_INSUFFICIENT_BUFFER。
[in, out] RequiredLength
输入时,此参数指定 证书 缓冲区的长度(以字节为单位)。 成功后,它将接收证书的长度。
返回值
如果函数成功,则返回值为 TRUE。
如果函数失败,则返回值为 FALSE。 若要检索扩展的错误信息,请调用 GetLastError。
注解
WIN_CERTIFICATE结构定义如下:
typedef struct _WIN_CERTIFICATE {
DWORD dwLength;
WORD wRevision;
WORD wCertificateType; // WIN_CERT_TYPE_xxx
BYTE bCertificate[ANYSIZE_ARRAY];
} WIN_CERTIFICATE, *LPWIN_CERTIFICATE;
所有 ImageHlp 函数(例如此函数)都是单线程函数。 因此,从多个线程调用此函数可能会导致意外行为或内存损坏。 若要避免这种情况,必须将多个线程中的所有并发调用同步到此函数。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | imagehlp.h |
Library | Imagehlp.lib |
DLL | Imagehlp.dll |