Fonction CryptCATAdminCalcHashFromFileHandle2 (mscat.h)
La fonction CryptCATAdminCalcHashFromFileHandle2 calcule le hachage d’un fichier à l’aide de l’algorithme spécifié.
Cette fonction n’a pas de bibliothèque d’importation associée. Vous devez utiliser les fonctions LoadLibrary et GetProcAddress pour établir un lien dynamique vers Wintrust.dll.
Syntaxe
BOOL CryptCATAdminCalcHashFromFileHandle2(
[in] HCATADMIN hCatAdmin,
[in] HANDLE hFile,
[in, out] DWORD *pcbHash,
BYTE *pbHash,
DWORD dwFlags
);
Paramètres
[in] hCatAdmin
Handle d’un contexte d’administrateur de catalogue ouvert. Pour plus d’informations, consultez CryptCATAdminAcquireContext2.
[in] hFile
Handle du fichier dont le hachage est en cours de calcul. Ce paramètre ne peut pas avoir la valeur NULL et doit être un handle de fichier valide.
[in, out] pcbHash
Pointeur vers une variable DWORD qui contient le nombre d’octets dans le paramètre pbHash . Lors de l’entrée, définissez pcbHash sur le nombre d’octets alloués pour pbHash. Au retour, pcbHash contient le nombre d’octets retournés en pbHash. Si pbHash a la valeur NULL, pcbHash contient le nombre d’octets à allouer pour pbHash.
pbHash
Pointeur vers une mémoire tampon BYTE qui reçoit le hachage. Si vous définissez ce paramètre sur NULL, pcbHash contiendra le nombre d’octets à allouer pour pbHash, et un appel suivant peut être effectué pour récupérer le hachage.
dwFlags
Réservé. Cette valeur doit être zéro.
Valeur retournée
Si la fonction réussit, la valeur de retour est différente de zéro (TRUE).
Si la fonction échoue, la valeur de retour est zéro (FALSE). Pour obtenir des informations d’erreur étendues, appelez GetLastError.
Le tableau suivant répertorie les codes d’erreur les plus couramment retournés par la fonction GetLastError .
Code de retour | Description |
---|---|
|
Le paramètre hFile ne doit pas avoir la valeur NULL.
Le paramètre hFile doit être un handle de fichier valide. Le paramètre pcbHash ne doit pas être NULL. Le paramètre dwFlags doit être égal à zéro (0). |
|
La mémoire tampon pointée vers le paramètre pbHash n’était pas NULL , mais n’était pas assez grande pour être écrite. La taille correcte de la mémoire tampon requise est contenue dans la valeur indiquée par le paramètre pcbHash . |
|
L’algorithme de hachage spécifié par le paramètre pwszHashAlgorithm est introuvable. |
Notes
La durée d’exécution de cette fonction dépend de la longueur du fichier en cours de hachage, de l’algorithme utilisé et de l’emplacement du fichier. Par exemple, le calcul du hachage d’un fichier local très volumineux (quelques centaines de mégaoctets) prend plusieurs secondes.
Spécifications
Client minimal pris en charge | Windows 8 [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2012 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | mscat.h |
Bibliothèque | Wintrust.lib |
DLL | Wintrust.dll |