Функция 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 |
Header | imagehlp.h |
Библиотека | Imagehlp.lib |
DLL | Imagehlp.dll |