Exactly what I was thinking. Just rebuild that 3698 version to be a major upgrade of 3699. Schedule RemoveExistingProducts to be early so that it removes all the 3699 versioned files during the upgrade, if that's what is needed. Alternatively, if there are just one or a few files in 3699 that are faulty, fix them and reversion them to be 3700 (or whatever the file versions need to be) and then your RemoveExistingProducts doesn't *need* to be early because all you want your new package to do is replace the few faulty 3699 files while upgrading your MSI product to a higher version.
Phil -----Original Message----- From: David Watson [mailto:dwat...@sdl.com] Sent: Wednesday, July 03, 2013 10:02 AM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] instaling a bundle to install an older msi Generally people fix the issue and release a later build version, so your scenario is quite odd. If you can't do that you could take the msi with build 3698 in it and edit it so that it does a major upgrade* (one that uninstalls and reinstalls) with orca or insted (you may need to re-sign it after modifying it). Major upgrade details in case you were not doing that:- http://wix.sourceforge.net/manual-wix3/major_upgrade.htm You must schedule an early RemoveExistingProducts or any versioned dlls will not be downgraded. Then add that to a bundle with a higher version than any other you have released. This will make it look like a new version of the application is being installed and the early scheduling of remove existing products should hopefully remove the later binaries and allow them to be downgraded. Hacky but easier than re-writing a BA. -----Original Message----- From: jo...@msli.com [mailto:jo...@msli.com] Sent: 03 July 2013 17:03 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] instaling a bundle to install an older msi That's the only way? Isn't there a way to force the user to uninstall one bundle before installing a new one? The reason I'm resistant to a custom BA is that I don't know how to approach programming a BA correctly. I know perl, python, bash, some C (from a unix world). I have made ant scripts to run wix commands, and I have learned wix to make an msi and a basic bundle, but the bundle will never pass QA as it is. Are there no other options? On Wed, 2013-07-03 at 02:13 -0700, Blair Murri wrote: > The only way to do that today would be to write a custom BA that > cycles through plan and apply twice: once to remove the previous bundle and the second time to install the MSI. > > > From: jo...@msli.com > > To: wix-users@lists.sourceforge.net > > Date: Tue, 2 Jul 2013 18:13:45 -0700 > > Subject: [WiX-users] instaling a bundle to install an older msi > > > > Can I make a bundle that always uninstalls the previous msi before > > installing the new one? > > > > I have a bundle that installed an msi. > > > > The bundle Version= 2013.07.01.0, > > the msi Version = 3.0.1 > > the program build 3699. > > > > There was a problem with build 3699 so I must release build 3698, in > > a way that is easy on the users. > > > > May I create a bundle that will install the build 3698 some how? > > > > I tried to increment the bundle Version= 2013.07.02.0, and build > > using the older msi, and install the bundle, "Programs and > > Feactures" increments the bundle version, but the msi was not > > downgrade to build 3698. > > > > How can I deal with this situation? > > > > My bundle.wxs > > <?xml version="1.0" encoding="UTF-8"?> <Wix > > xmlns="http://schemas.microsoft.com/wix/2006/wi" > > xmlns:bal="http://schemas.microsoft.com/wix/BalExtension" > > xmlns:util="http://schemas.microsoft.com/wix/UtilExtension" > > > > > > > <Bundle > > Name="$(var.MyInstallerName)" > > Version="$(var.BundleVersion)" > > Manufacturer="$(var.MyCompanyName)" > > Copyright="(c) All rights reserved." > > UpgradeCode="$(var.Guid_Bundle)" > > HelpTelephone="$(var.HelpPhone)" > > HelpUrl="$(var.HelpUrl)" > > UpdateUrl="$(var.UpdateUrl)" > > AboutUrl="$(var.AboutUrl)" > > Condition="((VersionNT >= v5.1) > > AND (ServicePackLevel >= 3)) > > OR ((VersionNT >= v5.2) > > AND (ServicePackLevel >= 2)) > > OR (VersionNT >= v6.0)" > > IconSourceFile="$(var.ProdIcon)" > > > > > > > <WixVariable > > Id="WixUIBannerBmp" > > Value="../ProgramFiles/Resources/Images/InstallerHeaderImage.bmp" > > /> > > <!-- Display License and Logo > > The URL is to the EULA embeded in the installer --> > > <BootstrapperApplicationRef > > Id="WixStandardBootstrapperApplication.HyperlinkLicense" > > > > > <bal:WixStandardBootstrapperApplication > > LicenseUrl="EULA.html" > > LogoFile="$(var.ProdIcon)" > > SuppressRepair="yes" > > SuppressOptionsUI="yes" > > /> > > <Payload Name="EULA.html" SourceFile="$(var.EULA)"/> > > </BootstrapperApplicationRef> > > > > <!-- BEGIN Conditional Def --> > > <!-- Check if WinPcap is installed and at least some version --> > > <util:RegistrySearch > > Id="RegistrySearchWinPcapHas" > > Variable="WinPcapInstalled" > > Root="HKLM" > > Key="SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\WinPcapInst" > > Result="exists" > > /> > > <util:RegistrySearch > > Id="RegistrySearchWinPcapMajor" > > Variable="WinPcapVersionMajor" > > Root="HKLM" > > Key="SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\WinPcapInst" > > Value="VersionMajor" > > Format="raw" > > Result="value" > > /> > > <util:RegistrySearch > > Id="RegistrySearchWinPcapMinor" > > Variable="WinPcapVersionMinor" > > Root="HKLM" > > Key="SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\WinPcapInst" > > Value="VersionMinor" > > Format="raw" > > Result="value" > > /> > > <!-- Check if Bounjour Print Services is installed --> > > <util:RegistrySearch > > Id="RegistrySearchBonjourHas" > > Variable="BonjourDLL" > > Root="HKLM" > > Key="SOFTWARE\Classes\AppID\Bonjour.DLL" > > Result="exists" > > /> > > <util:RegistrySearch > > Id="RegistrySearchBonjourValue" > > Variable="BounjourVersion" > > Root="HKLM" > > Key="SOFTWARE\Apple Inc.\Bonjour" > > Value="Version" > > Format="raw" > > Result="value" > > /> > > <!-- Check if Avdeccproxy is installed and at least some version --> > > <util:RegistrySearch > > Id="RegistrySearchProxyHas" > > Variable="ProxyInstalled" > > Root="HKLM" > > Key="SOFTWARE\Meyer Sound\AVDECC Proxy" > > Result="exists" > > /> > > <!-- END Conditional Def --> > > > > <!-- Begin Chain --> > > <Chain> > > <!-- Will not install if 4.1.3 or better is installed > > If installing, download from Internet --> > > <ExePackage > > Id="WinPcap" > > Name="WinPcap_4_1_3.exe" > > Vital="no" > > Compressed="no" > > DownloadUrl="http://www.winpcap.org/install/bin/WinPcap_4_1_3.exe" > > InstallCondition="NOT WinPcapInstalled OR ( 4 > WinPcapVersionMajor AND 1 > WinPcapVersionMinor)" > > Permanent="yes" > > > > > <RemotePayload > > Description="WinPcap 4.1.3 installer" > > Hash="e2516fcd1573e70334c8f50bee5241cdfdf48a00" > > ProductName="WinPcap 4.1.3" > > Size="915128" > > Version="4.1.0.2980" > > /> > > </ExePackage> > > <!-- Will not install if 2.0.2.0 or better is installed > > If installing download from the Internet --> > > <ExePackage > > Id="BonjourPSSetup" > > Name="BonjourPSSetup.exe" > > Vital="no" > > Compressed="no" > > DownloadUrl="http://support.apple.com/downloads/DL999/en_US/BonjourPSSetup.e x e" > > InstallCondition="NOT BonjourDLL OR v2.0.2.0 > BonjourVersion" > > Permanent="yes" > > > > > <RemotePayload > > ProductName="BonjourPrintServices" > > Description="Bonjour Printer Services Installer" > > Size="5436744" > > Version="2.0.2.0" > > Hash="847f39e0ea80d2a4d902fe59657e18f5bc32a8cb" > > /> > > </ExePackage> > > <!-- Will not install if already installed > > msi embeded in installer --> > > <MsiPackage > > Id="MyProxy" > > Name="$(var.MSI_Proxy)" > > DisplayName="Proxy" > > Description="Proxy Installation" > > DisplayInternalUI="yes" > > EnableFeatureSelection="yes" > > Vital="yes" > > Visible="yes" > > ForcePerMachine="yes" > > Cache="yes" > > Compressed="yes" > > Permanent="yes" > > SourceFile="..\Installers\$(var.MSI_Proxy)" > > /> > > <!-- Will not install if already installed and 32bit --> > > <MsiPackage > > Id="MyProgramInstaller" > > Name="$(var.MSI_Product)" > > DisplayName="Compass" > > Description="Compass Installation" > > DisplayInternalUI="yes" > > EnableFeatureSelection="yes" > > Vital="yes" > > Visible="no" > > ForcePerMachine="yes" > > Cache="yes" > > Compressed="yes" > > Permanent="no" > > SourceFile="..\Installers\$(var.MSI_Product)" > > /> > > </Chain> > > </Bundle> > > </Wix> > > > > > > > > NOTICE: This email may contain confidential information. Please see http://www.meyersound.com/confidential/ for our complete policy. > > > > -------------------------------------------------------------------- > > ---------- This SF.net email is sponsored by Windows: > > > > Build for Windows Store. > > > > http://p.sf.net/sfu/windows-dev2dev > > _______________________________________________ > > WiX-users mailing list > > WiX-users@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/wix-users > > ---------------------------------------------------------------------- > -------- This SF.net email is sponsored by Windows: > > Build for Windows Store. > > http://p.sf.net/sfu/windows-dev2dev > _______________________________________________ > WiX-users mailing list > WiX-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wix-users ---------------------------------------------------------------------------- - - This SF.net email is sponsored by Windows: Build for Windows Store. http://p.sf.net/sfu/windows-dev2dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users SDL PLC confidential, all rights reserved. If you are not the intended recipient of this mail SDL requests and requires that you delete it without acting upon or copying any of its contents, and we further request that you advise us. SDL PLC is a public limited company registered in England and Wales. Registered number: 02675207. Registered address: Globe House, Clivemont Road, Maidenhead, Berkshire SL6 7DY, UK. ---------------------------------------------------------------------------- -- This SF.net email is sponsored by Windows: Build for Windows Store. http://p.sf.net/sfu/windows-dev2dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ This SF.net email is sponsored by Windows: Build for Windows Store. http://p.sf.net/sfu/windows-dev2dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users