Funzione MsiGetFileSignatureInformationA (msi.h)
La funzione MsiGetFileSignatureInformation accetta il percorso di un file firmato digitalmente e restituisce il certificato e l'hash del firmatario del file. MsiGetFileSignatureInformation può essere chiamato per ottenere il certificato e l'hash del firmatario necessari per popolare le tabelle MsiDigitalCertificate, MsiPatchCertificatee MsiDigitalSignature.
Windows Installer 2.0: firme digitali delle patch non è supportata. Windows Installer 2.0 usa le firme digitali come mezzo per rilevare le risorse danneggiate e può verificare solo le firme digitali di archivi esterni e solo tramite l'uso del MsiDigitalSignature e MsiDigitalCertificate tabelle.
Sintassi
HRESULT MsiGetFileSignatureInformationA(
[in] LPCSTR szSignedObjectPath,
[in] DWORD dwFlags,
[out] PCCERT_CONTEXT *ppcCertContext,
[out] LPBYTE pbHashData,
[in, out] LPDWORD pcbHashData
);
Parametri
[in] szSignedObjectPath
Puntatore a una stringa con terminazione Null che specifica il percorso completo del file che contiene la firma digitale.
[in] dwFlags
Flag di caso di errore speciale.
[out] ppcCertContext
Contesto del certificato del firmatario restituito
[out] pbHashData
Buffer hash restituito. Questo parametro può essere null se i dati hash non vengono richiesti.
[in, out] pcbHashData
Puntatore a una variabile che specifica le dimensioni, in byte, del buffer a cui punta il parametro pbHashData. Questo parametro non può essere NULL se pbHashData non èNULL. Se viene restituito ERROR_MORE_DATA, pbHashData fornisce le dimensioni del buffer necessario per contenere i dati hash. Se viene restituito ERROR_SUCCESS, restituisce il numero di byte scritti nel buffer hash. Il parametro
Valore restituito
MsiGetFileSignatureInformation restituisce anche tutti i valori di errore Win32 mappati al tipo di dati HRESULT equivalente HRESULT_FROM_WIN32.
Osservazioni
Quando si richiede solo il contesto del certificato, un hash non valido nella firma digitale non causa MsiGetFileSignatureInformation restituire un errore irreversibile. Per restituire un errore irreversibile per un hash non valido, impostare il flag MSI_INVALID_HASH_IS_FATAL nel parametro dwFlags
Il contesto del certificato e le informazioni hash vengono estratte dal file da una chiamata a WinVerifyTrust. Il parametro ppcCertContext
Si noti che MsiGetFileSignatureInformation richiede la presenza del file Wintrust.dll nel sistema.
Nota
L'intestazione msi.h definisce MsiGetFileSignatureInformation 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 |
Vedere anche
firme digitali e di Windows Installer