That's the kind of thing that works if you know that the implementation will never change (that may be pretty safe because it's documented), that you won't confuse per-user and per-machine installs, and if you make sure that FindRelatedProducts is before AppSearch (which it isn't in some of the MSI files I've seen generated). There's a general principle here that I like to apply, which is that the registry is sometimes the implementation for information in Windows that you can get from an API, but it's much safer to trust the API than the registry. MsiGetProductInfoEx () or equivalent will tell you if it's installed for per-user, per-machine etc, and the install location if it was set.
Phil Wilson -----Original Message----- From: Alex Ivanoff [mailto:alex.ivan...@shavlik.com] Sent: Monday, March 29, 2010 1:04 PM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Save and reuse previous InstallDir ARPINSTALLLOCATION is stored in the resitry, so you can do something like this: <UpgradeVersion Minimum=" your_min_version " IncludeMinimum="yes" Maximum="your_max_version" IncludeMaximum="no" Property="OLDERVERSIONBEINGUPGRADED" /> ... <Property Id="INSTALLDIR"> <RegistrySearch Id="InstallDir" Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Uninstall\[OLDERVERSIONBEINGUPGRADED]" Name="InstallLocation" Type="raw" /> </Property> -----Original Message----- From: Wilson, Phil [mailto:phil.wil...@invensys.com] Sent: Monday, March 29, 2010 14:53 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Save and reuse previous InstallDir The good thing about ARPINSTALLLOCATION is that you anybody can call MsiGetProductInfo (,.....INSTALLPROPERTY_INSTALLLOCATION..) or equivalent to get the location. The bad thing about ARPINSTALLLOCATION is that you have to call MsiGetProductInfo (,.....INSTALLPROPERTY_INSTALLLOCATION..) or equivalent to get the location. It can be easier to use a registry item to store the install location ([TARGETDIR] or [INSTALLDIR]) because then you can do an AppSearch for it and not need to write any code. Phil Wilson -----Original Message----- From: Thomas Kehl [mailto:t.k...@ppsoftware.ch] Sent: Monday, March 29, 2010 12:39 PM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Save and reuse previous InstallDir Hi Pally Thank you for your help. I have this now in my wix-script and the InstallLocation will be set in the registry. But I don't know, what I have to do, that it will be reused when I do an update. Can you help me about this one more time? - Thanks. Thomas -----Ursprüngliche Nachricht----- Von: Pally Sandher [mailto:pally.sand...@iesve.com] Gesendet: Montag, 29. März 2010 18:22 An: General discussion for Windows Installer XML toolset. Betreff: Re: [WiX-users] Save and reuse previous InstallDir What Alex means is you can set the ARPINSTALLLOCATION property (http://msdn.microsoft.com/en-us/library/aa367589.aspx) to do that for you using a type 51 custom action. The following code should work for you Thomas: <CustomAction Id="SetARPInstallLoc" Property="ARPINSTALLLOCATION" Value="[INSTALLDIR]" /> <InstallExecuteSequence> <Custom Action="SetARPInstallLoc" Before="RegisterProduct" /> </InstallExecuteSequence> That will (should) set the "InstallLocation" value under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{ YOUR-PRODUCT-GUID} Good Luck. 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: Alex Ivanoff [mailto:alex.ivan...@shavlik.com] Sent: 29 March 2010 17:00 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Save and reuse previous InstallDir ARPINSTALLLOCATION. -----Original Message----- From: Thomas Kehl [mailto:t.k...@ppsoftware.ch] Sent: Monday, March 29, 2010 10:45 To: wix-users@lists.sourceforge.net Subject: [WiX-users] Save and reuse previous InstallDir Hi. What does I have to do, that my installer savest he InstallDir which the user has browse and installed to and reuse it for an update? Thank you. Thomas ------------------------------------------------------------------------ ------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------ ------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users *** Confidentiality Notice: This e-mail, including any associated or attached files, is intended solely for the individual or entity to which it is addressed. This e-mail is confidential and may well also be legally privileged. If you have received it in error, you are on notice of its status. Please notify the sender immediately by reply e-mail and then delete this message from your system. Please do not copy it or use it for any purposes, or disclose its contents to any other person. This email comes from a division of the Invensys Group, owned by Invensys plc, which is a company registered in England and Wales with its registered office at Portland House, Bressenden Place, London, SW1E 5BF (Registered number 166023). For a list of European legal entities within the Invensys Group, please go to http://www.invensys.com/legal/default.asp?top_nav_id=77&nav_id=80&prev_id=77. You may contact Invensys plc on +44 (0)20 7821 3848 or e-mail inet.hqhelpd...@invensys.com. This e-mail and any attachments thereto may be subject to the terms of any agreements between Invensys (and/or its subsidiaries and affiliates) and the recipient (and/or its subsidiaries and affiliates). ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users *** Confidentiality Notice: This e-mail, including any associated or attached files, is intended solely for the individual or entity to which it is addressed. This e-mail is confidential and may well also be legally privileged. If you have received it in error, you are on notice of its status. Please notify the sender immediately by reply e-mail and then delete this message from your system. Please do not copy it or use it for any purposes, or disclose its contents to any other person. This email comes from a division of the Invensys Group, owned by Invensys plc, which is a company registered in England and Wales with its registered office at Portland House, Bressenden Place, London, SW1E 5BF (Registered number 166023). For a list of European legal entities within the Invensys Group, please go to http://www.invensys.com/legal/default.asp?top_nav_id=77&nav_id=80&prev_id=77. You may contact Invensys plc on +44 (0)20 7821 3848 or e-mail inet.hqhelpd...@invensys.com. This e-mail and any attachments thereto may be subject to the terms of any agreements between Invensys (and/or its subsidiaries and affiliates) and the recipient (and/or its subsidiaries and affiliates). ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users