Hi All,

I thought I was on the right track with this, but after some testing 
it's not working as expected.

I've defined this in my installer:

<Property Id='UNINSTALL_EXE64'>
<RegistrySearch Id='LocateUninstallExe64' Type='file' Root='HKLM' 
Key='SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{413B7644-1F93-4890-BD40-AC540C29935B}_is1'
 
Name='UninstallString' />
</Property>
<Property Id='UNINSTALL_EXE32'>
<RegistrySearch Id='LocateUninstallExe32' Type='file' Root='HKLM' 
Key='SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{413B7644-1F93-4890-BD40-AC540C29935B}_is1'
 
Name='UninstallString' />
</Property>

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

<!-- Custom Actions -->
<CustomAction Id="ca.RemovePreviousVersion64" 
Property="UNINSTALL_EXE64"  ExeCommand="/SILENT" Return="check" />
<CustomAction Id="ca.RemovePreviousVersion32" Property="UNINSTALL_EXE32" 
ExeCommand="/SILENT" Return="check" />

<!-- Installer Sequencing -->
<InstallExecuteSequence>
<Custom Action="ca.RemovePreviousVersion64" 
Before="InstallFiles">VERSIONNT64</Custom>
<Custom Action="ca.RemovePreviousVersion32" 
Before="InstallFiles">VERSIONNT</Custom>
</InstallExecuteSequence>

As sean said below he uses QuiteUninstallString but in the registry that 
is the "path to the uninstall.exe" with a command of "/SILENT" and 
CustomActions need a Property (full path to exe) and an ExeCommand.  Can 
the exe command be specified with an empty string?

Or am I completely barking up the wrong tree with the whole thing at the 
moment?

Thanks,

Jammer


On 10/03/2011 22:23, Sean Farrow wrote:
> Hi:
> On a 32-bit version of windows, your key would look like:
> "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{413B7644-1F93-4890-BD40-AC540C29935B}_is1"
> I don't tend to use SilentUninstallString in these situations as this stil 
> shows user interface--at least the cancel button if I remember correctly and 
> it may even give the user the option to uninstall! I'd rather use 
> "QuietUninstallString" as this shows nothing.
> To get these two custom actions to work you need to search the registry based 
> on a condition--I'd use VERSIONNT64/VERSIONNT.
> Then have two custom actions in your InstallExecute sequence, one that 
> executes if your running 32-bit windows and the other if your running 64-bit.
> Looking at the old code I ran the uninstall just before InstallFiles.
>
> If you need any further help let me know but hopefully this should be enough 
> to get you going!
> Cheers
> Sean.
------------------------------------------------------------------------------
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

Reply via email to