Hi Rob, I've just tried these new settings and I'm getting an error.
"The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2613". Which seems to be a scheduling issue with the RemoveExistingProducts action. I'm looking at the log that was generated and to be honest I'm finding the contents confusing. According to the log my custom action was performed: Action start 20:14:16: ca.RemovePreviousVersion32. Action ended 20:14:16: ca.RemovePreviousVersion32. Return value 1. But the old application is still installed. I tried moving my custom action to After="RemoveExistingProducts" but this ended up with the same mangled partial install of the MSI version. Should my return be check instead of ignore? I'm also a bit confused as to how the Return and Execute interact as they seem to have similar semantics. If something is deferred or "in-script" is that syncronous? Any other ideas? Thanks, Jammer On 12/03/2011 15:48, Rob Mensching wrote: > Seems like you'd want the uninstall to be deferred. I'd mark the > CustomAction deferred and schedule after InstallInitialize. > > On Sat, Mar 12, 2011 at 5:57 AM, Jammer <jam...@jammer.biz > <mailto:jam...@jammer.biz>> wrote: > > Hi All, > > I've got this working now, but there is one major problem. It appears > there is some form of race condition. > > According to the MSI log my custom action is being run: > > Action 13:35:42: ca.RemovePreviousVersion32. > Action start 13:35:42: ca.RemovePreviousVersion32. > Action ended 13:35:49: ca.RemovePreviousVersion32. Return value 1. > > My CustomAction is: > > <CustomAction Id="ca.RemovePreviousVersion32" > Property="UNINSTALL_EXE32" > ExeCommand="/SILENT" Execute="immediate" Return="ignore" /> > > <InstallExecuteSequence> > <Custom Action="ca.RemovePreviousVersion32" > Before="InstallValidate">UNINSTALL_EXE32</Custom> > </InstallExecuteSequence> > > Which as far as I can tell should be running the custom action > syncronously and immediately before InstallValidate without > checking the > return value (I've tried other setting for the Return with the > same effect). > > However, at the end of the MSI install files are missing from the > install directory! It's as if the previous version uninstall has > still > been active after the MSI has written it's files to the install > directory and then deleted them as well. I tried building an MSI that > wrote to a different location and that worked. The MSI install was > complete and working and the old version was un-installed as required. > > Any ideas would be great. > > Thanks, > > Jammer > > > ------------------------------------------------------------------------------ > Colocation vs. Managed Hosting > A question and answer guide to determining the best fit > for your organization - today and in the future. > http://p.sf.net/sfu/internap-sfd2d > _______________________________________________ > WiX-users mailing list > WiX-users@lists.sourceforge.net > <mailto:WiX-users@lists.sourceforge.net> > https://lists.sourceforge.net/lists/listinfo/wix-users > > > > > -- > virtually, Rob Mensching - http://RobMensching.com LLC ------------------------------------------------------------------------------ Colocation vs. Managed Hosting A question and answer guide to determining the best fit for your organization - today and in the future. http://p.sf.net/sfu/internap-sfd2d _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users