src/jdk.jpackage/windows/classes/jdk/jpackage/internal/resources/main.wxs
author herrick
Mon, 04 Nov 2019 15:06:01 -0500
branchJDK-8200758-branch
changeset 58922 fbaf2e6402ad
parent 58887 920f6770d71c
permissions -rw-r--r--
8232919 : If user installs msi and exe, two installations are found in Add/Remove Submitted-by: asemenyuk Reviewed-by: aherrick, almatvee

<?xml version="1.0" encoding="utf-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
     xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">

  <?ifdef JpIsSystemWide ?>
    <?define JpInstallScope="perMachine"?>
  <?else?>
    <?define JpInstallScope="perUser"?>
  <?endif?>

  <?define JpProductLanguage=1033 ?>
  <?define JpInstallerVersion=200 ?>
  <?define JpCompressedMsi=yes ?>

  <?include $(var.JpConfigDir)/overrides.wxi ?>

  <Product
    Id="$(var.JpProductCode)"
    Name="$(var.JpAppName)"
    Language="$(var.JpProductLanguage)"
    Version="$(var.JpAppVersion)"
    Manufacturer="$(var.JpAppVendor)"
    UpgradeCode="$(var.JpProductUpgradeCode)">

    <Package
      Description="$(var.JpAppDescription)"
      Manufacturer="$(var.JpAppVendor)"
      InstallerVersion="$(var.JpInstallerVersion)"
      Compressed="$(var.JpCompressedMsi)"
      InstallScope="$(var.JpInstallScope)" Platform="x64"
    />

    <Media Id="1" Cabinet="Data.cab" EmbedCab="yes" />

    <?ifdef JpAllowDowngrades ?>
    <?ifdef JpAllowUpgrades ?>
    <MajorUpgrade
      AllowDowngrades="yes"
      Disallow="no"
    />
    <?endif?>
    <?endif?>

    <?ifdef JpAllowDowngrades ?>
    <?ifndef JpAllowUpgrades ?>
    <MajorUpgrade
      AllowDowngrades="yes"
      Disallow="yes"
      DisallowUpgradeErrorMessage="!(loc.DisallowUpgradeErrorMessage)"
    />
    <?endif?>
    <?endif?>

    <?ifndef JpAllowDowngrades ?>
    <?ifdef JpAllowUpgrades ?>
    <MajorUpgrade
      AllowDowngrades="no"
      Disallow="no"
      DowngradeErrorMessage="!(loc.DowngradeErrorMessage)"
    />
    <?endif?>
    <?endif?>

    <?ifndef JpAllowDowngrades ?>
    <?ifndef JpAllowUpgrades ?>
    <MajorUpgrade
      AllowDowngrades="no"
      Disallow="yes"
      DowngradeErrorMessage="!(loc.DowngradeErrorMessage)"
      DisallowUpgradeErrorMessage="!(loc.DisallowUpgradeErrorMessage)"
    />
    <?endif?>
    <?endif?>

    <!-- Standard required root -->
    <Directory Id="TARGETDIR" Name="SourceDir"/>

    <Feature Id="DefaultFeature" Title="!(loc.MainFeatureTitle)" Level="1">
      <ComponentGroupRef Id="Shortcuts"/>
      <ComponentGroupRef Id="Files"/>
      <ComponentGroupRef Id="FileAssociations"/>
    </Feature>

    <?ifdef JpInstallDirChooser ?>
    <Binary Id="JpCaDll" SourceFile="wixhelper.dll"/>
    <CustomAction Id="JpCheckInstallDir" BinaryKey="JpCaDll" DllEntry="CheckInstallDir" />
    <?endif?>

    <UI>
      <?ifdef JpInstallDirChooser ?>
      <Dialog Id="JpInvalidInstallDir" Width="300" Height="85" Title="[ProductName] Setup" NoMinimize="yes">
        <Control Id="JpInvalidInstallDirYes" Type="PushButton" X="100" Y="55" Width="50" Height="15" Default="no" Cancel="no" Text="Yes">
          <Publish Event="NewDialog" Value="VerifyReadyDlg">1</Publish>
        </Control>
        <Control Id="JpInvalidInstallDirNo" Type="PushButton" X="150" Y="55" Width="50" Height="15" Default="yes" Cancel="yes" Text="No">
          <Publish Event="NewDialog" Value="InstallDirDlg">1</Publish>
        </Control>
        <Control Id="Text" Type="Text" X="25" Y="15" Width="250" Height="30" TabSkip="no">
          <Text>!(loc.message.install.dir.exist)</Text>
        </Control>
      </Dialog>

      <!--
        Run WixUI_InstallDir dialog in the default install directory.
      -->
      <Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR"/>
      <UIRef Id="WixUI_InstallDir" />

      <Publish Dialog="InstallDirDlg" Control="Next" Event="DoAction" Value="JpCheckInstallDir" Order="3">1</Publish>
      <Publish Dialog="InstallDirDlg" Control="Next" Event="NewDialog" Value="JpInvalidInstallDir" Order="5">INSTALLDIR_VALID="0"</Publish>
      <Publish Dialog="InstallDirDlg" Control="Next" Event="NewDialog" Value="VerifyReadyDlg" Order="5">INSTALLDIR_VALID="1"</Publish>

      <?ifndef JpLicenseRtf ?>
      <!--
        No license file provided.
        Override the dialog sequence in built-in dialog set "WixUI_InstallDir"
        to exclude license dialog.
      -->
      <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="InstallDirDlg" Order="2">1</Publish>
      <Publish Dialog="InstallDirDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg" Order="2">1</Publish>
      <?endif?>

      <?else?>

      <?ifdef JpLicenseRtf ?>
      <UIRef Id="WixUI_Minimal" />
      <?endif?>

      <?endif?>
    </UI>

    <?ifdef JpLicenseRtf ?>
    <WixVariable Id="WixUILicenseRtf" Value="$(var.JpLicenseRtf)"/>
    <?endif?>

  </Product>
</Wix>