Installer.FileSignatureInfo method

The FileSignatureInfo method of the Installer object takes the path to a file and returns a SAFEARRAY of bytes that represent the hash or the encoded certificate. The values can then be used to populate the MsiDigitalSignature, MsiPatchCertificate, and MsiDigitalCertificate tables.

For more information, see the SAFEARRAY Data Type.

Syntax

Installer.FileSignatureInfo(
  FilePath,
  Options,
  Format
)

Parameters

FilePath

Full path to a file that is digitally signed.

When populating the MsiDigitalSignature and MsiDigitalCertificate tables, FilePath points to a digitally signed cabinet. When populating the MsiPatchCertificate and MsiDigitalCertificate tables, FilePath points to a digitally signed patch.

Options

Special error case flags.

Flag Meaning
msiSignatureOptionInvalidHashFatal
1
With Options set to msiSignatureOptionInvalidHashFatal, FileSignatureInfo always returns a fatal error for an invalid hash.
If Options is not set to msiSignatureOptionInvalidHashFatal and Format is set to msiSignatureInfoCertificate, FileSignatureInfo does not return an error for an invalid hash.

 

Format

The requested signature information.

Flag Meaning
msiSignatureInfoCertificate
0
Returns a SAFEARRAY of bytes that represent the encoded certificate.
msiSignatureInfoHash
1
Returns a SAFEARRAY of bytes that represent the hash.

 

Return value

If successful, the method returns a SAFEARRAY of bytes that contain either the hash or encoded certificate.

Remarks

To author a fully verified signed installation by using automation, use the FileSignatureInfo method to populate the MsiDigitalCertificate, MsiPatchCertificate, and MsiDigitalSignature tables. For more information, see Authoring a Fully Verified Signed Installation Using Automation.

Requirements

Requirement Value
Version
Windows Installer 5.0 on Windows Server 2012, Windows 8, Windows Server 2008 R2 or Windows 7. Windows Installer 4.0 or Windows Installer 4.5 on Windows Server 2008 or Windows Vista. Windows Installer on Windows Server 2003 or Windows XP
DLL
Msi.dll
IID
IID_IInstaller is defined as 000C1090-0000-0000-C000-000000000046

See also

Authoring a Fully Verified Signed Installation Using Automation

Digital Signatures and Windows Installer

MsiGetFileSignatureInformation