fixed: msi 32-bit and 64-bit should not be installed side by side, user should use the right arch.

fixed: msi duplicate installs when using different nightly build revs (probably a hacky fix).
This commit is contained in:
Nick Bolton 2014-03-10 20:21:14 +00:00
parent 1774a3a4ee
commit 158a621218
2 changed files with 23 additions and 4 deletions

View File

@ -12,12 +12,19 @@
<?define Version="1.0.0" ?> <?define Version="1.0.0" ?>
<?endif?> <?endif?>
<?define UpgradeGuid32="BE0B9FD8-45E2-4A8E-A0D8-1F774D074A78" ?>
<?define UpgradeGuid64="E8A4FA54-14B9-4FD1-8E00-7BC46555FDA0" ?>
<?if $(var.Platform) = "x64" ?> <?if $(var.Platform) = "x64" ?>
<?define ProgramFilesFolder="ProgramFiles64Folder" ?> <?define ProgramFilesFolder="ProgramFiles64Folder" ?>
<?define PlatformSimpleName="64-bit" ?> <?define PlatformSimpleName="64-bit" ?>
<?define UpgradeGuid="$(var.UpgradeGuid64)" ?>
<?else?> <?else?>
<?define ProgramFilesFolder="ProgramFilesFolder" ?> <?define ProgramFilesFolder="ProgramFilesFolder" ?>
<?define PlatformSimpleName="32-bit" ?> <?define PlatformSimpleName="32-bit" ?>
<?define UpgradeGuid="$(var.UpgradeGuid32)" ?>
<?endif?> <?endif?>
<?define CRT="$(env.CommonProgramFiles)\Merge Modules\Microsoft_VC100_CRT_$(var.Platform).msm" ?>
</Include> </Include>

View File

@ -7,15 +7,27 @@
<?include Include.wxi?> <?include Include.wxi?>
<Product <Product
Id="*" Name="$(var.Name) ($(var.PlatformSimpleName))" Language="1033" Id="*"
Version="$(var.Version)" Manufacturer="$(var.Author)" UpgradeCode="$(var.UpgradeGuid)"
UpgradeCode="E87C85E3-69FD-4F00-BBB4-69C5FD615D47"> Name="$(var.Name) ($(var.PlatformSimpleName))"
Language="1033"
Version="$(var.Version)"
Manufacturer="$(var.Author)">
<Package InstallerVersion="300" Compressed="yes" InstallScope="perMachine" /> <Package InstallerVersion="300" Compressed="yes" InstallScope="perMachine" />
<MajorUpgrade DowngradeErrorMessage="A newer version of $(var.Name) is already installed." /> <MajorUpgrade DowngradeErrorMessage="A newer version of $(var.Name) is already installed." />
<MediaTemplate EmbedCab="yes" /> <MediaTemplate EmbedCab="yes" />
<UIRef Id="WixUI_InstallDir" /> <UIRef Id="WixUI_InstallDir" />
<?if $(var.Platform) = "x86" ?>
<Condition Message="You are running a 64-bit version of Windows. Please install the 64-bit version of $(var.Name) instead of the 32-bit version.">NOT Msix64</Condition>
<?endif ?>
<!-- causes ICE61 warning, but stops user from installing many instances from nightly builds. -->
<Upgrade Id="$(var.UpgradeGuid)">
<UpgradeVersion Minimum="0.0.0.0" Property="UPGRADE" />
</Upgrade>
<Feature Id="ProductFeature" Title="$(var.Name)"> <Feature Id="ProductFeature" Title="$(var.Name)">
<ComponentGroupRef Id="ProductComponents" /> <ComponentGroupRef Id="ProductComponents" />
<MergeRef Id="CRT" /> <MergeRef Id="CRT" />
@ -64,7 +76,7 @@
<Directory Id="TARGETDIR" Name="SourceDir"> <Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="$(var.ProgramFilesFolder)"> <Directory Id="$(var.ProgramFilesFolder)">
<Directory Id="INSTALLFOLDER" Name="$(var.Name)"> <Directory Id="INSTALLFOLDER" Name="$(var.Name)">
<Merge Id="CRT" Language="0" SourceFile="$(env.CommonProgramFiles)\Merge Modules\Microsoft_VC100_CRT_x86.msm" DiskId="1" /> <Merge Id="CRT" Language="0" SourceFile="$(var.CRT)" DiskId="1" />
</Directory> </Directory>
</Directory> </Directory>
<Directory Id="ProgramMenuFolder" /> <Directory Id="ProgramMenuFolder" />