public void Install(InstallationSettings settings)
        {
            using (var tempDirectory = new TempDirectory(_directoryPath))
            {
                var installerPackagePath = Path.Combine(_directoryPath, GetInstallerPackageFileName(settings));

                ZipFile.ExtractToDirectory(installerPackagePath, tempDirectory.Path);

                var installerPath = Path.Combine(tempDirectory.Path, settings.InstallerFileName);
                WindowsInstaller.Install(installerPath, settings.AdditionalParameters);
            }
        }
 private string GetInstallerPackageFileName(InstallationSettings settings)
 {
     return(Environment.Is64BitOperatingSystem
         ? settings.PackageX64FileName
         : settings.PackageX86FileName);
 }