Funzione CheckSumMappedFile (imagehlp.h)

Calcola il checksum del file di immagine specificato.

Sintassi

PIMAGE_NT_HEADERS IMAGEAPI CheckSumMappedFile(
  [in]  PVOID  BaseAddress,
  [in]  DWORD  FileLength,
  [out] PDWORD HeaderSum,
  [out] PDWORD CheckSum
);

Parametri

[in] BaseAddress

Indirizzo di base del file mappato. Questo valore viene ottenuto chiamando la funzione MapViewOfFile .

[in] FileLength

Dimensioni del file, in byte.

[out] HeaderSum

Puntatore a una variabile che riceve il checksum originale dal file di immagine o zero se si verifica un errore.

[out] CheckSum

Puntatore alla variabile che riceve il checksum calcolato.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è un puntatore alla struttura IMAGE_NT_HEADERS contenuta nell'immagine mappata.

Se la funzione ha esito negativo, il valore restituito è NULL. Per recuperare informazioni sull'errore estese, chiamare GetLastError.

Commenti

La funzione CheckSumMappedFile calcola un nuovo checksum per il file e lo restituisce nel parametro CheckSum . Questa funzione viene usata da qualsiasi applicazione che crea o modifica un'immagine eseguibile. I checksum sono necessari per i driver in modalità kernel e per alcune DLL di sistema. Il linker calcola il checksum originale in fase di collegamento, se si usa l'opzione del linker appropriata. Per altre informazioni, vedere la documentazione del linker.

È consigliabile che tutte le immagini abbiano checksum validi. È responsabilità del chiamante inserire il checksum appena calcolato nell'immagine mappata e aggiornare l'immagine sul disco del file.

Tutte le funzioni ImageHlp, ad esempio questa, sono a thread singolo. Pertanto, le chiamate da più thread a questa funzione potrebbero causare un comportamento imprevisto o un danneggiamento della memoria. Per evitare questo problema, è necessario sincronizzare tutte le chiamate simultanee da più thread a questa funzione.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione imagehlp.h
Libreria Imagehlp.lib
DLL Imagehlp.dll

Vedi anche

IMAGE_NT_HEADERS

Funzioni ImageHlp

MapFileAndCheckSum

MapViewOfFile