Right, so I added the dummy KeyPath registry entry, like so:

<Component Id="Uninstaller" Guid="0454D0FC-190C-42c9-9506-DBA17DECBCB2">
  <RegistryKey Action="createAndRemoveOnUninstall" Root="HKCU"
Key="Software\ScreenArchitect\Uninstaller">
    <RegistryValue Value="" Type="string" KeyPath="yes" />
  </RegistryKey>
  <Shortcut Target="[UNINSTALLCMD]" Id="UninstallIcon" Name="Uninstall"
Description="Uninstall Application" Directory="ProgramMenuDir" />
</Component>

And I built my MSI successfully, however during installation it fails to
create the shortcut, complaining that it can't find or write to the
destination directory - I have other shortcuts (for executable files) which
are being created just fine in the same location (but they're advertised
shortcuts)... am I missing something vital here?

Chez,

 - Alex

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of André Pönitz
Sent: Friday, 16 February 2007 9:33 p.m.
To: wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] uninstall shortcut...

Alex Henderson wrote:
> My client wants his installer to have an "uninstall" shortcut, but I can't
> seem to quite get it right... after reading some posts I ended up with
this:
> 
> <Property Id="UNINSTALLCMD" Value="MSIEXEC.EXE /x [!PRODUCTID]" />
> 
> And also...
> 
> <Component Id="Uninstaller" 
> Guid="F72CE94D-8E6E-4b9e-95BC-7DC80C3641B6">
>    <Shortcut Target="[UNINSTALLCMD]" Id="UninstallIcon" 
> Name="Uninstall"
> Description="Uninstall My Application" Directory="ProgramMenuDir" />
> </Component>
> 
> However when I compile I get these errors (below)... what's 
> the right way to do it?

I think the right way would be to get the validation rules fixed,
but I guess that's not anption for mere mortals like us ;-)

My personal workaround is to add a dummy registry entry under 
HKCU as keypath for the component as in

    <Component Id='Uninstaller'
         <RegistryValue Id='Uninstaller' Root='HKCU'
Key='Software\.....\Uninstaller'
             Name='Dummy' Action='write' Type='integer' Value='0'
KeyPath='yes' />
           ...
    </Component>

This 'works' but obviously has the potential to leave rubbish in
the registry.

Andre'

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to