RemoveExistingProducts after InstallFinalize works the way you describe - it is basically an install of the new version on top of the older version where the file replacement rules are followed. This means that only higher versioned files will get updated (ignoring data file rules).
Here are two things you could check for, as well as look at a log to see what's going on: 1. Bypassing the UI sometimes results in ALLUSERS not being set. This can result in a per-user install being attempted on top of a per-machine install with unpredictable results. 2. RemoveExistingProducts after InstallFinalize means that the RemoveExistingProducts is not part of the install transaction. So you can install the new version, try to uninstall the old version but that fails and rolls back and reinstalls the old product, and now you have some strange mix of old and new on the system. The cure for this is to have the sequence InstallExecute, REP, InstallFinalize at the end of your execute sequence so that REP is within the install transaction. Phil Wilson -----Original Message----- From: Gus Nassar [mailto:[email protected]] Sent: Wednesday, March 02, 2011 6:58 AM To: [email protected] Subject: [WiX-users] Passive Vs Full UI and it's effect on RemoveExistingProducts Hello, My understanding of msiexec [msi] /qb or /passive is that the effect is much like if a user had accepted/defaulted all of the dialogs and continued through the installation process without stopping for coffee, tea of any other refreshments. I'm facing the problem where my understanding is obviously lacking. We have an installer where in the event of it's execution in Full UI mode, it updates and installs our software as expected. On the other hand in the event that we run the installer silently, only the files that have been changed between the previous installed version, and the new one are left, while all files that are not modified get wiped out. I believe this is happening due to RemoveExistingProducts, and: <RemoveExistingProducts After="InstallFinalize" /> The question(s) I have is why would it not happen equally in Full UI and and Basic, and how do I stop it from wiping out the previous version? Thank you for your time, G Code segments: <Product Id="*" Name="P1" Language="1033" Version="$(var.ProductVersion)" Manufacturer="Manufacturer" UpgradeCode="$(var.UpgradeCode)"> <Upgrade Id="$(var.UpgradeCode)"> <UpgradeVersion Minimum="$(var.ProductVersion)" IncludeMinimum="no" OnlyDetect="yes" Language="1033" Property="NEWPRODUCTFOUND" /> <UpgradeVersion Minimum="$(var.RTMProductVersion)" IncludeMinimum="yes" Maximum="$(var.ProductVersion)" IncludeMaximum="no" Language="1033" Property="UPGRADEFOUND" OnlyDetect="no"/> </Upgrade> <CustomAction Id="PreventDowngrading" Error="Newer version already installed." /> <!-- Sequences --> <InstallExecuteSequence> <Custom Action="PreventDowngrading" After="FindRelatedProducts">NEWPRODUCTFOUND</Custom> <RemoveExistingProducts After="InstallFinalize" /> </InstallExecuteSequence> <InstallUISequence> <Custom Action="PreventDowngrading" After="FindRelatedProducts">NEWPRODUCTFOUND</Custom> </InstallUISequence> <Directory Id="TARGETDIR" Name="SourceDir"> <Merge Id="CRT" Language="0" SourceFile="$(var.CRT_SourceFile)" DiskId="1" /> <Merge Id="MFC" Language="0" SourceFile="$(var.MFC_SourceFile)" DiskId="1" /> . . Locations Files and Generic Stuff . <Feature Id="ProductFeature" Title="installer" Level="1"> <ComponentRef Id="F1" /> <ComponentRef Id="F2" /> <ComponentRef Id="F3" /> <ComponentRef Id="DriverComponent" /> <MergeRef Id="CRT" /> <MergeRef Id="MFC" /> <ComponentRef Id="F4" /> </Feature> <UIRef Id="WixUI_Minimal" /> </Product> ------------------------------------------------------------------------------ Free Software Download: Index, Search & Analyze Logs and other IT data in Real-Time with Splunk. Collect, index and harness all the fast moving IT data generated by your applications, servers and devices whether physical, virtual or in the cloud. Deliver compliance at lower cost and gain new business insights. http://p.sf.net/sfu/splunk-dev2dev _______________________________________________ WiX-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/wix-users *** Confidentiality Notice: This e-mail, including any associated or attached files, is intended solely for the individual or entity to which it is addressed. This e-mail is confidential and may well also be legally privileged. If you have received it in error, you are on notice of its status. Please notify the sender immediately by reply e-mail and then delete this message from your system. Please do not copy it or use it for any purposes, or disclose its contents to any other person. This email comes from a division of the Invensys Group, owned by Invensys plc, which is a company registered in England and Wales with its registered office at 3rd Floor, 40 Grosvenor Place, London, SW1X 7AW (Registered number 166023). For a list of European legal entities within the Invensys Group, please go to http://www.invensys.com/legal/default.asp?top_nav_id=77&nav_id=80&prev_id=77. You may contact Invensys plc on +44 (0)20 3155 1200 or e-mail [email protected]. This e-mail and any attachments thereto may be subject to the terms of any agreements between Invensys (and/or its subsidiaries and affiliates) and the recipient (and/or its subsidiaries and affiliates). ------------------------------------------------------------------------------ Free Software Download: Index, Search & Analyze Logs and other IT data in Real-Time with Splunk. Collect, index and harness all the fast moving IT data generated by your applications, servers and devices whether physical, virtual or in the cloud. Deliver compliance at lower cost and gain new business insights. http://p.sf.net/sfu/splunk-dev2dev _______________________________________________ WiX-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/wix-users

