Funzione CryptCATAdminCalcHashFromFileHandle2 (mscat.h)
La funzione CryptCATAdminCalcHashFromFileHandle2 calcola l'hash per un file usando l'algoritmo specificato.
Questa funzione non ha una libreria di importazione associata. È necessario usare le funzioni LoadLibrary e GetProcAddress per collegare dinamicamente a Wintrust.dll.
Sintassi
BOOL CryptCATAdminCalcHashFromFileHandle2(
[in] HCATADMIN hCatAdmin,
[in] HANDLE hFile,
[in, out] DWORD *pcbHash,
BYTE *pbHash,
DWORD dwFlags
);
Parametri
[in] hCatAdmin
Handle di un contesto di amministratore del catalogo aperto. Per altre informazioni, vedere CryptCATAdminAcquireContext2.
[in] hFile
Handle per il file il cui hash viene calcolato. Questo parametro non può essere NULL e deve essere un handle di file valido.
[in, out] pcbHash
Puntatore a una variabile DWORD contenente il numero di byte nel parametro pbHash . Al momento dell'input, impostare pcbHash sul numero di byte allocati per pbHash. Al ritorno, pcbHash contiene il numero di byte restituiti in pbHash. Se pbHash è impostato su NULL, pcbHash contiene il numero di byte da allocare per pbHash.
pbHash
Puntatore a un buffer BYTE che riceve l'hash. Se si imposta questo parametro su NULL, pcbHash conterrà il numero di byte da allocare per pbHash e una chiamata successiva può essere effettuata per recuperare l'hash.
dwFlags
Riservato. Il valore deve essere zero.
Valore restituito
Se la funzione ha esito positivo, il valore restituito è diverso da zero (TRUE).
Se la funzione ha esito negativo, il valore restituito è zero (FALSE). Per informazioni sugli errori estesi, chiamare GetLastError.
Nella tabella seguente sono elencati i codici di errore restituiti più di frequente dalla funzione GetLastError .
Codice restituito | Descrizione |
---|---|
|
Il parametro hFile non deve essere NULL.
Il parametro hFile deve essere un handle di file valido. Il parametro pcbHash non deve essere NULL. Il parametro dwFlags deve essere zero (0). |
|
Il buffer a cui punta il parametro pbHash non era NULL , ma non era sufficientemente grande da scrivere. La dimensione corretta del buffer richiesto è contenuta nel valore a cui punta il parametro pcbHash . |
|
Impossibile trovare l'algoritmo hash specificato dal parametro pwszHashAlgorithm . |
Commenti
La quantità di tempo necessaria per l'esecuzione di questa funzione dipende dalla lunghezza del file sottoposto a hashing, dall'algoritmo in uso e dal percorso del file. Ad esempio, sono necessari alcuni secondi per calcolare l'hash di un file locale di dimensioni molto grandi (poche centinaia di megabyte).
Requisiti
Client minimo supportato | Windows 8 [solo app desktop] |
Server minimo supportato | Windows Server 2012 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | mscat.h |
Libreria | Wintrust.lib |
DLL | Wintrust.dll |