The following basically covers what you are asking: 
http://robmensching.com/blog/archive/2007/04/27/How-to-create-an-uninstall-shortcut-and-pass-all-the.aspx


Stryder Crown wrote:
> ok, so, what's the difference between including the shortcut as a child
> element to the File node, or creating an entire component around the
> shortcut?  And do we really need registry writes for a shortcut element?
> What does that achieve?  Link to an article?
>
> *curious*
>
> Stryder
>
> On Wed, Apr 8, 2009 at 9:26 AM, Pally Sandher <[email protected]>wrote:
>
>   
>> The WiX.chm file has a section in the How To Guides on Shortcuts. It
>> explains all this in detail.
>>
>>
>> Palbinder Sandher
>> Software Deployment & IT Administrator
>> T: +44 (0) 141 945 8500
>> F: +44 (0) 141 945 8501
>>
>> http://www.iesve.com
>> **Design, Simulate + Innovate with the <Virtual Environment>**
>> Integrated Environmental Solutions Limited. Registered in Scotland No.
>> SC151456
>> Registered Office - Helix Building, West Of Scotland Science Park,
>> Glasgow G20 0SP
>> Email Disclaimer
>>
>>
>>
>> -----Original Message-----
>> From: Madden, William [mailto:[email protected]]
>> Sent: 08 April 2009 16:35
>> To: General discussion for Windows Installer XML toolset.
>> Subject: Re: [WiX-users] Start Menu Shortcut Problem
>>
>> I just went through this myself use AllUsersProgramMenuFolder as the
>> parent this is "perMachine" where ProgramMenuFolder is "perUser".
>>
>> I did have to create a RemoveFolder entry for my subfolder and set
>> On="Uninstall"
>>
>> William Madden
>> T:  480.368.3736 (x7679)
>>
>> -----Original Message-----
>> From: Lanteigne, Alan [mailto:[email protected]]
>> Sent: Wednesday, April 08, 2009 7:59 AM
>> To: [email protected]
>> Subject: [WiX-users] Start Menu Shortcut Problem
>>
>> Hello Wix World:
>>
>> While trying to setup a shortcut to an EXE, I'm getting this error:
>>
>> ICE64: The directory ProgramMenuDir is in the user profile but is not
>> listed in the RemoveFile table.
>>
>> I thought I had done everything correctly but apparently I'm missing
>> something.  Googling shows something about ProgramMenuFolder being
>> specific to a user's profile, but I'm trying to setup this shortcut for
>> "All Users"... not just one user.  For one thing, I want newly created
>> users (after the app is installed) to have the shortcut appear.  Also,
>> the "My App Folder" is used by other programs so I don't want to remove
>> it if this MSI is uninstalled.
>>
>> Here's what I'm doing:
>>
>>        <Directory Id="sys32folder" Name="System32">
>>
>>          <Component Id="ID_COM_myTest"
>> Guid="193119C5-AF4B-4432-9406-FFF1C34DE71D">
>>            <File Id=" myTestFile" Name=" myTest.exe"
>> Source="BuildFiles\System32\ myTest.exe" Vital="yes" KeyPath="yes"
>> DiskId="1" />
>>            <Shortcut Id=" myTestsm" Directory="Dir_MyStartmenuSubDir"
>> Name="Run myTest " Icon="myTestIcon" IconIndex="0" Show="normal"
>> WorkingDirectory="sys32Folder" />
>>          </Component>
>>
>>          <Directory Id="ProgramFilesFolder" SourceName="Program Files
>> Folder" />
>>
>>          <Directory Id="ProgramMenuFolder" Name="Programs">
>>            <Directory Id="ProgramMenuDir" Name="My App Folder" />
>>          </Directory>
>>          <Directory Id="Dir_MyStartmenuSubDir" Name="My App Folder" />
>>
>>        </Directory>
>>
>> I later define the Icon and set the ALLUSERS property to 1.
>>
>> What am I missing or not understanding?
>>
>> Thanks,
>>
>> Alan
>>
>> -----Original Message-----
>> From: [email protected]
>> [mailto:[email protected]]
>> Sent: Tuesday, April 07, 2009 3:02 PM
>> To: [email protected]
>> Subject: WiX-users Digest, Vol 35, Issue 30
>>
>> Send WiX-users mailing list submissions to
>>        [email protected]
>>
>> To subscribe or unsubscribe via the World Wide Web, visit
>>        https://lists.sourceforge.net/lists/listinfo/wix-users
>> or, via email, send a message with subject or body 'help' to
>>        [email protected]
>>
>> You can reach the person managing the list at
>>        [email protected]
>>
>> When replying, please edit your Subject line so it is more specific than
>> "Re: Contents of WiX-users digest..."
>>
>>
>> Today's Topics:
>>
>>   1. Re: Votive not working in build 3.0.5207 (Neil Sleightholm)
>>   2. Re: ICE64: The directory ProgramMenuDir is in the user
>>      profile but is not listed in the RemoveFile table. (Rob Mensching)
>>   3. Re: Check for IIS application pools (Rob Mensching)
>>   4.  DTF build issue (mcheshier)
>>   5. Re: how to change an installed package? (Alan Sinclair)
>>   6. Re: Check for IIS application pools (mcheshier)
>>   7. Re: how to change an installed package? (Karl Denning)
>>
>>
>> ----------------------------------------------------------------------
>>
>> Message: 1
>> Date: Tue, 7 Apr 2009 18:04:10 +0100
>> From: "Neil Sleightholm" <[email protected]>
>> Subject: Re: [WiX-users] Votive not working in build 3.0.5207
>> To: "General discussion for Windows Installer XML toolset."
>>        <[email protected]>
>> Message-ID:
>>        <[email protected]>
>> Content-Type: text/plain;       charset="us-ascii"
>>
>> I have just confirmed this on another PC. Create a new WiX project,
>> right click on project and select "Add | New folder" and you get an
>> error "The operation cannot be completed".
>>
>> Bug raised:
>> https://sourceforge.net/tracker/?func=detail&aid=2741235&group_id=105970
>> &atid=642714<https://sourceforge.net/tracker/?func=detail&aid=2741235&group_id=105970%0A&atid=642714>
>>
>> Neil
>>
>> -----Original Message-----
>> From: Neil Sleightholm [mailto:[email protected]]
>> Sent: 07 April 2009 17:09
>> To: General discussion for Windows Installer XML toolset.
>> Subject: Re: [WiX-users] Votive not working in build 3.0.5207
>>
>> I think I know what the problem is, from this build Votive won't allow
>> you to add folders or to load any projects that contain folders.
>>
>> Neil
>>
>> -----Original Message-----
>> From: Neil Sleightholm [mailto:[email protected]]
>> Sent: 07 April 2009 16:46
>> To: General discussion for Windows Installer XML toolset.
>> Subject: [WiX-users] Votive not working in build 3.0.5207
>>
>> Some of my wixproj files won't load in WiX v3.0.5207 - the error message
>> is "Error HRESULT E_FAIL has been return from a call to a COM
>> component". I noticed in the history.txt that there is a breaking change
>> to wix.targets - is this the reason? Is anyone else getting this error
>> or know how to fix it?
>>
>> Thanks
>>
>> Neil
>>
>> Neil Sleightholm
>> X2 Systems Limited
>> [email protected]
>>
>>
>> ------------------------------------------------------------------------
>> ------
>> This SF.net email is sponsored by:
>> High Quality Requirements in a Collaborative Environment.
>> Download a free trial of Rational Requirements Composer Now!
>> http://p.sf.net/sfu/www-ibm-com
>> _______________________________________________
>> WiX-users mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>
>> ------------------------------------------------------------------------
>> ------
>> This SF.net email is sponsored by:
>> High Quality Requirements in a Collaborative Environment.
>> Download a free trial of Rational Requirements Composer Now!
>> http://p.sf.net/sfu/www-ibm-com
>> _______________________________________________
>> WiX-users mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>
>>
>>
>> ------------------------------
>>
>> Message: 2
>> Date: Tue, 7 Apr 2009 10:16:51 -0700
>> From: Rob Mensching <[email protected]>
>> Subject: Re: [WiX-users] ICE64: The directory ProgramMenuDir is in the
>>        user profile but is not listed in the RemoveFile table.
>> To: General discussion for Windows Installer XML toolset.
>>        <[email protected]>
>> Message-ID: <[email protected]>
>> Content-Type: text/plain; charset="ISO-8859-1"; format=flowed
>>
>> It's annoying.  This old blog entry should explain more:
>> http://robmensching.com/blog/archive/2007/04/27/How-to-create-an-uninsta
>> ll-shortcut-and-pass-all-the.aspx<http://robmensching.com/blog/archive/2007/04/27/How-to-create-an-uninsta%0All-shortcut-and-pass-all-the.aspx>
>>
>>
>> Lanteigne, Alan wrote:
>>     
>>> Hello Wix World:
>>>
>>> While trying to setup a shortcut to an EXE, I'm getting this error:
>>>
>>> ICE64: The directory ProgramMenuDir is in the user profile but is not
>>>       
>> listed in the RemoveFile table.
>>     
>>> I thought I had done everything correctly but apparently I'm missing
>>>       
>> something.  Googling shows something about ProgramMenuFolder being
>> specific to a user's profile, but I'm trying to setup this shortcut for
>> "All Users"... not just one user.  For one thing, I want newly created
>> users (after the app is installed) to have the shortcut appear.  Here's
>> what I'm doing:
>>     
>>>         <Directory Id="sys32folder" Name="System32">
>>>
>>>           <Component Id="ID_COM_myTest"
>>>       
>> Guid="193119C5-AF4B-4432-9406-FFF1C34DE71D">
>>     
>>>             <File Id=" myTestFile" Name=" myTest.exe"
>>>       
>> Source="BuildFiles\System32\ myTest.exe" Vital="yes" KeyPath="yes"
>> DiskId="1" />
>>     
>>>             <Shortcut Id=" myTestsm" Directory="Dir_MyStartmenuSubDir"
>>>       
>> Name="Run myTest " Icon="myTestIcon" IconIndex="0" Show="normal"
>> WorkingDirectory="sys32Folder" />
>>     
>>>           </Component>
>>>
>>>           <Directory Id="ProgramFilesFolder" SourceName="Program Files
>>>       
>>> Folder" />
>>>
>>>           <Directory Id="ProgramMenuFolder" Name="Programs">
>>>             <Directory Id="ProgramMenuDir" Name="My App Folder" />
>>>           </Directory>
>>>           <Directory Id="Dir_MyStartmenuSubDir" Name="My App Folder"
>>> />
>>>
>>>         </Directory>
>>>
>>> I later define the Icon and set the ALLUSERS property to 1.
>>>
>>> What am I missing or not understanding?
>>>
>>> Thanks,
>>>
>>> Alan
>>> ----------------------------------------------------------------------
>>> --------
>>> This SF.net email is sponsored by:
>>> High Quality Requirements in a Collaborative Environment.
>>> Download a free trial of Rational Requirements Composer Now!
>>> http://p.sf.net/sfu/www-ibm-com
>>> _______________________________________________
>>> WiX-users mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>>
>>>       
>>
>> ------------------------------
>>
>> Message: 3
>> Date: Tue, 7 Apr 2009 10:18:28 -0700
>> From: Rob Mensching <[email protected]>
>> Subject: Re: [WiX-users] Check for IIS application pools
>> To: General discussion for Windows Installer XML toolset.
>>        <[email protected]>
>> Message-ID: <[email protected]>
>> Content-Type: text/plain; charset="ISO-8859-1"; format=flowed
>>
>> Yes, it is possible but requires a fair bit of CustomAction work. We
>> haven't added such a thing to the WiX toolset yet...
>>
>> Bahn Thomas wrote:
>>     
>>> Hello,
>>>
>>> can i check for an installed IIS and list the available application
>>>       
>> pools?
>>     
>>> The avaliable application pools should be listed in a listbox control.
>>>
>>> Thanks
>>>
>>> Thomas Bahn
>>> ----------------------------------------------------------------------
>>> -------- _______________________________________________
>>> WiX-users mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>>
>>>       
>>
>> ------------------------------
>>
>> Message: 4
>> Date: Tue, 7 Apr 2009 10:26:01 -0700 (PDT)
>> From: mcheshier <[email protected]>
>> Subject: [WiX-users]  DTF build issue
>> To: [email protected]
>> Message-ID: <[email protected]>
>> Content-Type: text/plain; charset=us-ascii
>>
>>
>> Hi, I've been slowly converting a lot of VBScript custom actions to the
>> DTF and am loving it. I'm having a weird build issue though and was
>> hoping someone could help me out.
>>
>> On my primary dev machine when I build my CA.dll it creates a 660 KB
>> .dll that mysteriously and randomly dies in the middle of a custom
>> action. As the (working) .dll in SVN was larger (around 690KB), I
>> suspected a build issue and this was confirmed when I compiled my .dll
>> on a VM and it came out to 690KB (and worked). I'm using VS2008 with WiX
>> 3.0.4085. I'm guessing that a dependency of some sort isn't being
>> compiled in, but I'm not an expert on the underpinnings of .NET.
>>
>> On a related note, I noticed that the final .CA dll seems to be a
>> slightly different size each time I build it. Is this just a .NET thing
>> or should I be concerned?
>> --
>> View this message in context:
>> http://n2.nabble.com/DTF-build-issue-tp2600276p2600276.html
>> Sent from the wix-users mailing list archive at Nabble.com.
>>
>>
>>
>>
>> ------------------------------
>>
>> Message: 5
>> Date: Tue, 7 Apr 2009 10:58:03 -0700
>> From: Alan Sinclair <[email protected]>
>> Subject: Re: [WiX-users] how to change an installed package?
>> To: General discussion for Windows Installer XML toolset.
>>        <[email protected]>
>> Message-ID:
>>
>> <25171b03a3d9e24aadc227668ade91c91d408a9...@sjcpmailbox01.citrite.net>
>> Content-Type: text/plain; charset="us-ascii"
>>
>> Thanks that will do it, provided that during the enumeration I can
>> identify the original msi (which is created by our customers, as I'm
>> just shipping a merge module.)
>>
>> I'd imagined using the handle of the currently-running msi (the newer
>> version that's going to run RemoveExistingProducts) to get the identity
>> of the original msi, but maybe that's not possible?
>>
>>
>> -----Original Message-----
>> From: Karl Denning [mailto:[email protected]]
>> Sent: Tuesday, April 07, 2009 9:16 AM
>> To: [email protected]
>> Subject: Re: [WiX-users] how to change an installed package?
>>
>>
>> Perhaps this would do the trick
>>
>> 1. Immediate run once CA* sequenced in both the UI and execute sequences
>> before appsearch.
>> (Perhaps condition the execute sequence CA to only run if UILevel < 4)
>> 2. The CA should enumerate every msi in <WINDOWS>\installer.
>> 3. Determine which one is your previous version (msiOpenDatabase + sql
>> query).
>> 4. Change the execute sequence CA condition.
>> 5. Save the MSI.
>> 6. End CA.
>>
>> *The CA does not need to be C++, you could do the above using script and
>> the WindowsInstaller interface.
>>
>>
>>
>> This is not strictly a WiX question, but I'd *really* appreciate any
>> suggestions!
>>
>> I shipped a merge module which customers build into their MSIs. The
>> merge mod installs a device driver. The problem is that I did not
>> properly allow for an upgrade. During an upgrade, the driver must NOT be
>> uninstalled - the custom action that removes the driver should have
>> included NOT UPGRADINGPRODUCTCODE, but I forgot it.
>>
>> The newer version of the merge module will need to edit the installed
>> MSI, and put the condition NOT UPGRADINGPRODUCTCODE on the custom action
>> which installs the driver.
>>
>> How do I do this? A brief outline to get me started will be very helpful
>> and much appreciated. I'm assuming it will need a C++ DLL custom action,
>> but otherwise don't really know much. Unfortunately it isn't possible to
>> produce a separate script (which I know how to do, using SQL to edit
>> tables etc.) -- this has to be done from the merge module, adding the
>> extra complication that it can't hard code the UpgradeCode or
>> ProductCode of the already-installed package.
>>
>> Many thanks!
>> ------------------------------------------------------------------------
>> ------
>> This SF.net email is sponsored by:
>> High Quality Requirements in a Collaborative Environment.
>> Download a free trial of Rational Requirements Composer Now!
>> http://p.sf.net/sfu/www-ibm-com
>> _______________________________________________
>> WiX-users mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>
>>
>>
>> --
>> View this message in context:
>> http://n2.nabble.com/how-to-change-an-installed-package--tp2596131p25998
>> 47.html<http://n2.nabble.com/how-to-change-an-installed-package--tp2596131p25998%0A47.html>
>> Sent from the wix-users mailing list archive at Nabble.com.
>>
>>
>> ------------------------------------------------------------------------
>> ------
>> This SF.net email is sponsored by:
>> High Quality Requirements in a Collaborative Environment.
>> Download a free trial of Rational Requirements Composer Now!
>> http://p.sf.net/sfu/www-ibm-com
>> _______________________________________________
>> WiX-users mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>
>>
>>
>> ------------------------------
>>
>> Message: 6
>> Date: Tue, 7 Apr 2009 10:55:48 -0700 (PDT)
>> From: mcheshier <[email protected]>
>> Subject: Re: [WiX-users] Check for IIS application pools
>> To: [email protected]
>> Message-ID: <[email protected]>
>> Content-Type: text/plain; charset=us-ascii
>>
>>
>> We had to write a bunch of ADSI custom action code using C# and the DTF.
>> It's not fun but it can be done.
>>
>> Hello,
>>
>> can i check for an installed IIS and list the available application
>> pools?
>> The avaliable application pools should be listed in a listbox control.
>>
>> Thanks
>>
>> Thomas Bahn
>> ------------------------------------------------------------------------
>> ------
>> _______________________________________________
>> WiX-users mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>
>>
>>
>> --
>> View this message in context:
>> http://n2.nabble.com/Check-for-IIS-application-pools-tp2579446p2600456.h
>> tml<http://n2.nabble.com/Check-for-IIS-application-pools-tp2579446p2600456.h%0Atml>
>> Sent from the wix-users mailing list archive at Nabble.com.
>>
>>
>>
>>
>> ------------------------------
>>
>> Message: 7
>> Date: Tue, 7 Apr 2009 12:01:22 -0700 (PDT)
>> From: Karl Denning <[email protected]>
>> Subject: Re: [WiX-users] how to change an installed package?
>> To: [email protected]
>> Message-ID: <[email protected]>
>> Content-Type: text/plain; charset=us-ascii
>>
>>
>> You can identify the msi by searching each MSI for your CA in the
>> execute sequence using msi sql.
>> The sequenced CA should have a signature that you can easily detect (the
>> name of your CA, the target, the wrong condition being parts of the
>> signature).
>>
>> On second thoughts, this technique is unlikely to work at all on Vista
>> upwards because the CA that changes the v1 MSI will not be elevated.  8$
>>
>>
>>
>>
>> Thanks that will do it, provided that during the enumeration I can
>> identify the original msi (which is created by our customers, as I'm
>> just shipping a merge module.)
>>
>> I'd imagined using the handle of the currently-running msi (the newer
>> version that's going to run RemoveExistingProducts) to get the identity
>> of the original msi, but maybe that's not possible?
>>
>>
>>
>>
>> --
>> View this message in context:
>> http://n2.nabble.com/how-to-change-an-installed-package--tp2596131p26008
>> 13.html<http://n2.nabble.com/how-to-change-an-installed-package--tp2596131p26008%0A13.html>
>> Sent from the wix-users mailing list archive at Nabble.com.
>>
>>
>>
>>
>> ------------------------------
>>
>> ------------------------------------------------------------------------
>> ------
>> This SF.net email is sponsored by:
>> High Quality Requirements in a Collaborative Environment.
>> Download a free trial of Rational Requirements Composer Now!
>> http://p.sf.net/sfu/www-ibm-com
>>
>> ------------------------------
>>
>> _______________________________________________
>> WiX-users mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>
>>
>> End of WiX-users Digest, Vol 35, Issue 30
>> *****************************************
>>
>>
>>
>>
>>
>> ------------------------------------------------------------------------
>> ------
>> This SF.net email is sponsored by:
>> High Quality Requirements in a Collaborative Environment.
>> Download a free trial of Rational Requirements Composer Now!
>> http://p.sf.net/sfu/www-ibm-com
>> _______________________________________________
>> WiX-users mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>
>>
>>
>>
>> ------------------------------------------------------------------------------
>> This SF.net email is sponsored by:
>> High Quality Requirements in a Collaborative Environment.
>> Download a free trial of Rational Requirements Composer Now!
>> http://p.sf.net/sfu/www-ibm-com
>> _______________________________________________
>> WiX-users mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>
>>     
> ------------------------------------------------------------------------------
> This SF.net email is sponsored by:
> High Quality Requirements in a Collaborative Environment.
> Download a free trial of Rational Requirements Composer Now!
> http://p.sf.net/sfu/www-ibm-com
> _______________________________________________
> WiX-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
>   

------------------------------------------------------------------------------
Stay on top of everything new and different, both inside and 
around Java (TM) technology - register by April 22, and save
$200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
300 plus technical and hands-on sessions. Register today. 
Use priority code J9JMT32. http://p.sf.net/sfu/p
_______________________________________________
WiX-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to