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

另请参阅

ImageHlp 函数