Partager via


CheckSumMappedFile, fonction (imagehlp.h)

Calcule la somme de contrôle du fichier image spécifié.

Syntaxe

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

Paramètres

[in] BaseAddress

Adresse de base du fichier mappé. Cette valeur est obtenue en appelant la fonction MapViewOfFile .

[in] FileLength

Taille du fichier, en octets.

[out] HeaderSum

Pointeur vers une variable qui reçoit la somme de contrôle d’origine du fichier image, ou zéro en cas d’erreur.

[out] CheckSum

Pointeur vers la variable qui reçoit la somme de contrôle calculée.

Valeur retournée

Si la fonction réussit, la valeur de retour est un pointeur vers la structure IMAGE_NT_HEADERS contenue dans l’image mappée.

Si la fonction échoue, la valeur de retour est NULL. Pour récupérer des informations d’erreur étendues, appelez GetLastError.

Remarques

La fonction CheckSumMappedFile calcule une nouvelle somme de contrôle pour le fichier et la retourne dans le paramètre CheckSum . Cette fonction est utilisée par toute application qui crée ou modifie une image exécutable. Les sommes de contrôle sont requises pour les pilotes en mode noyau et certaines DLL système. L’éditeur de liens calcule la somme de contrôle d’origine au moment du lien, si vous utilisez le commutateur d’éditeur de liens approprié. Pour plus d’informations, consultez la documentation de votre éditeur de liens.

Il est recommandé que toutes les images aient des sommes de contrôle valides. Il incombe à l’appelant de placer la somme de contrôle nouvellement calculée dans l’image mappée et de mettre à jour l’image sur disque du fichier.

Toutes les fonctions ImageHlp, telles que celle-ci, sont à thread unique. Par conséquent, les appels de plusieurs threads à cette fonction entraîneront probablement un comportement inattendu ou une altération de la mémoire. Pour éviter cela, vous devez synchroniser tous les appels simultanés de plusieurs threads vers cette fonction.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
Plateforme cible Windows
En-tête imagehlp.h
Bibliothèque Imagehlp.lib
DLL Imagehlp.dll

Voir aussi

IMAGE_NT_HEADERS

Fonctions ImageHlp

MapFileAndCheckSum

MapViewOfFile