Funzione MsiGetFileHashA (msi.h)
La funzione MsiGetFileHash accetta il percorso di un file e restituisce un hash a 128 bit di tale file. Gli strumenti di creazione possono usare MsiGetFileHash per ottenere l'hash del file necessario per popolare la tabella MsiFileHash.
Windows Installer usa l'hashing dei file come mezzo per rilevare ed eliminare la copia di file non necessarie. Un hash di file archiviato nella tabella MsiFileHash può essere confrontato con un hash di un file esistente nel computer dell'utente.
Sintassi
UINT MsiGetFileHashA(
[in] LPCSTR szFilePath,
[in] DWORD dwOptions,
[out] PMSIFILEHASHINFO pHash
);
Parametri
[in] szFilePath
Percorso del file che deve essere sottoposto a hashing.
[in] dwOptions
Il valore in questa colonna deve essere 0. Questo parametro è riservato per un uso futuro.
[out] pHash
Puntatore alle informazioni sull'hash del file restituito.
Valore restituito
Valore | Significato |
---|---|
|
La funzione è stata completata correttamente. |
|
Il file non esiste. |
|
Impossibile aprire il file per ottenere informazioni sulla versione. |
|
Si è verificato un errore imprevisto. |
Osservazioni
L'intero hash di file a 128 bit viene restituito come quattro campi a 32 bit. La numerazione dei quattro campi è in base zero. I valori restituiti da
Le informazioni hash immesse nella tabella MsiFileHash devono essere ottenute chiamando MsiGetFileHash o il metodo FileHash. Non tentare di usare altri metodi per generare l'hash del file.
Nota
L'intestazione msi.h definisce MsiGetFileHash come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Windows Installer 5.0 in Windows Server 2012, Windows 8, Windows Server 2008 R2 o Windows 7. Windows Installer 4.0 o Windows Installer 4.5 in Windows Server 2008 o Windows Vista. Windows Installer in Windows Server 2003 o Windows XP. Per informazioni sul Service Pack minimo di Windows richiesto da una versione di Windows Installer, vedere Requisiti di windows Run-Time. |
piattaforma di destinazione | Finestre |
intestazione |
msi.h |
libreria |
Msi.lib |
dll | Msi.dll |