Función CryptCATAdminCalcHashFromFileHandle2 (mscat.h)
La función CryptCATAdminCalcHashFromFileHandle2 calcula el hash de un archivo mediante el algoritmo especificado.
Esta función no tiene ninguna biblioteca de importación asociada. Debe usar las funciones LoadLibrary y GetProcAddress para vincular dinámicamente a Wintrust.dll.
Sintaxis
BOOL CryptCATAdminCalcHashFromFileHandle2(
[in] HCATADMIN hCatAdmin,
[in] HANDLE hFile,
[in, out] DWORD *pcbHash,
BYTE *pbHash,
DWORD dwFlags
);
Parámetros
[in] hCatAdmin
Identificador de un contexto de administrador de catálogo abierto. Para obtener más información, vea CryptCATAdminAcquireContext2.
[in] hFile
Identificador del archivo cuyo hash se está calculando. Este parámetro no puede ser NULL y debe ser un identificador de archivo válido.
[in, out] pcbHash
Puntero a una variable DWORD que contiene el número de bytes en el parámetro pbHash . Tras la entrada, establezca pcbHash en el número de bytes asignados para pbHash. Tras la devolución, pcbHash contiene el número de bytes devueltos en pbHash. Si pbHash se establece en NULL, pcbHash contiene el número de bytes que se asignarán para pbHash.
pbHash
Puntero a un búfer BYTE que recibe el hash. Si establece este parámetro en NULL, pcbHash contendrá el número de bytes que se asignarán para pbHash y se puede realizar una llamada posterior para recuperar el hash.
dwFlags
Reservado. Este valor debe ser cero.
Valor devuelto
Si la función se ejecuta correctamente, el valor devuelto es distinto de cero (TRUE).
Si se produce un error en la función, el valor devuelto es cero (FALSE). Para obtener información de error extendida, llame a GetLastError.
En la tabla siguiente se enumeran los códigos de error devueltos normalmente por la función GetLastError .
Código devuelto | Descripción |
---|---|
|
El parámetro hFile no debe ser NULL.
El parámetro hFile debe ser un identificador de archivo válido. El parámetro pcbHash no debe ser NULL. El parámetro dwFlags debe ser cero (0). |
|
El búfer al que apunta el parámetro pbHash no era NULL , pero no era lo suficientemente grande como para escribirse. El tamaño correcto del búfer necesario se encuentra en el valor al que apunta el parámetro pcbHash . |
|
No se encuentra el algoritmo hash especificado por el parámetro pwszHashAlgorithm . |
Comentarios
La cantidad de tiempo que tarda esta función en ejecutarse depende de la longitud del archivo que se va a aplicar un algoritmo hash, del algoritmo que se usa y de la ubicación del archivo. Por ejemplo, se tardan varios segundos en calcular el hash de un archivo local que es muy grande (unos cientos de megabytes).
Requisitos
Cliente mínimo compatible | Windows 8 [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2012 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | mscat.h |
Library | Wintrust.lib |
Archivo DLL | Wintrust.dll |