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

