Pascal Scripting: IsMsiProductInstalled

Prototype

function IsMsiProductInstalled(const UpgradeCode: String; const PackedMinVersion: Int64): Boolean;

Description

Returns True if a MSI product with the specified UpgradeCode and PackedMinVersion is installed.

If there are multiple products installed with the specified UpgradeCode only the version of the first product returned by the system is checked.

An exception will be raised if an error occurs.

Example:
function InitializeSetup: Boolean;
begin
  Result := IsMsiProductInstalled('{20400CF0-DE7C-327E-9AE4-F0F38D9085F8}', PackVersionComponents(12, 0, 0, 0)); //Returns True if Visual C++ 2013 Redistributable (x64) is installed
  if not Result then
    SuppressibleMsgBox(FmtMessage(SetupMessage(msgWinVersionTooLowError), ['Visual C++ 2013 Redistributable (x64)', '12.0']), mbCriticalError, MB_OK, IDOK);
end;