Partager via


IDiaSourceFile::get_checksum

Récupère les octets de somme de contrôle.

Syntaxe

HRESULT get_checksum ( 
   DWORD  cbData,
   DWORD* pcbData,
   BYTE   data[]
);

Paramètres

cbData

[in] Taille du tampon de données, en octets.

pcbData

[out] Retourne le nombre d’octets de somme de contrôle. Ce paramètre ne peut pas être NULL.

data

[in, out] Mémoire tampon remplie d’octets de somme de contrôle. Si ce paramètre est NULL, pcbData retourne le nombre d’octets requis.

Valeur renvoyée

En cas de réussite, retourne S_OK , sinon, retourne un code d'erreur.

Remarques

Pour déterminer le type d’algorithme de somme de contrôle utilisé pour générer les octets de somme de contrôle, appelez la méthode IDiaSourceFile::get_checksumType.

La somme de contrôle est généralement générée à partir de l’image du fichier source afin que les modifications apportées au fichier source soient reflétées dans les modifications des octets de somme de contrôle. Si les octets de somme de contrôle ne correspondent pas à une somme de contrôle générée à partir de l’image chargée du fichier, le fichier doit être considéré comme endommagé ou falsifié.

Les sommes de contrôle classiques ne sont jamais supérieures à 32 octets, mais ne partent pas du principe qu’il s’agit de la taille maximale d’une somme de contrôle. Définissez le paramètre data sur NULL pour obtenir le nombre d’octets requis pour récupérer la somme de contrôle. Ensuite, allouez une mémoire tampon de la taille appropriée et appelez cette méthode une fois de plus avec la nouvelle mémoire tampon.

Voir aussi