Поделиться через


Функция 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

См. также раздел

IMAGE_NT_HEADERS

Функции ImageHlp

MapFileAndCheckSum

MapViewOfFile