Функция CheckSumMappedFile (imagehlp.h)
Вычисляет контрольную сумму указанного файла образа.
Синтаксис
PIMAGE_NT_HEADERS IMAGEAPI CheckSumMappedFile(
[in] PVOID BaseAddress,
[in] DWORD FileLength,
[out] PDWORD HeaderSum,
[out] PDWORD CheckSum
);
Параметры
[in] BaseAddress
Базовый адрес сопоставленного файла. Это значение получается путем вызова функции MapViewOfFile .
[in] FileLength
Размер файла в байтах.
[out] HeaderSum
Указатель на переменную, получающую исходную контрольную сумму из файла изображения, или нуль при возникновении ошибки.
[out] CheckSum
Указатель на переменную, получающую вычисленную контрольную сумму.
Возвращаемое значение
Если функция выполняется успешно, возвращаемое значение является указателем на структуру IMAGE_NT_HEADERS , содержащуюся в сопоставленном изображении.
Если функция завершается сбоем, возвращается значение NULL. Чтобы получить расширенные сведения об ошибке, вызовите Метод GetLastError.
Комментарии
Функция CheckSumMappedFile вычисляет новую контрольную сумму для файла и возвращает ее в параметре CheckSum . Эта функция используется любым приложением, которое создает или изменяет исполняемый образ. Контрольные суммы требуются для драйверов режима ядра и некоторых системных библиотек DLL. Компоновщик вычисляет исходную контрольную сумму во время компоновки, если используется соответствующий переключатель компоновщика. Дополнительные сведения см. в документации по компоновщику.
Рекомендуется, чтобы все образы имели допустимые контрольные суммы. Вызывающий объект несет ответственность за размещение вновь вычисленной контрольной суммы в сопоставленный образ и обновление образа файла на диске.
Все функции ImageHlp, такие как эта, являются однопоточными. Поэтому вызовы из нескольких потоков к этой функции, скорее всего, приведут к непредвиденному поведению или повреждению памяти. Чтобы избежать этого, необходимо синхронизировать все параллельные вызовы из нескольких потоков в эту функцию.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | imagehlp.h |
Библиотека | Imagehlp.lib |
DLL | Imagehlp.dll |