I found the answer. First it occurred to me, that I did not CARE which of the two files were found, as long as at least ONE of them was. So I modified my code to look for BOTH of them independently and then as long as one was found, do the install. It really helped to SPELL the file name properly too.
<Property Id="PATH32" > <RegistrySearch Id="Path32" Root="HKLM" Key="<actual key covered by NDA>" Name="Path" Type="raw" /> </Property> <Property Id="PATH64" > <RegistrySearch Id="Path64" Root="HKLM" Key="<actual key covered by NDA>" Name="Path" Type="raw" /> </Property> <Property Id="ADDIN32" > <DirectorySearch Id="AddinDir" Path="[PATH32]" > <FileSearch Id="AddInFileSearch" Name="<actual file name covered by NDA>" /> </DirectorySearch> <Property Id="ADDIN64" > <DirectorySearch Id="AddinDir" Path="[PATH64]" > <FileSearch Id="AddInFileSearch" Name="<actual file name covered by NDA>" /> </DirectorySearch> </Property> <Condition Message="<message not relevant to the problem>" ><![CDATA[Installed OR (ADDIN32 OR ADDIN64)]]></Condition> Dane Anderson ACRO Service Corp. -----Original Message----- From: wix-users-requ...@lists.sourceforge.net [mailto:wix-users-requ...@lists.sourceforge.net] Sent: Thursday, February 18, 2010 3:11 PM To: wix-users@lists.sourceforge.net Subject: WiX-users Digest, Vol 45, Issue 74 Send WiX-users mailing list submissions to wix-users@lists.sourceforge.net 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 wix-users-requ...@lists.sourceforge.net You can reach the person managing the list at wix-users-ow...@lists.sourceforge.net When replying, please edit your Subject line so it is more specific than "Re: Contents of WiX-users digest..." Today's Topics: 1. How to determine current culture in WiX preprocessor (Oleksandr Y. Nechyporenko) 2. Verifying existance of a file using multiple properties (Dane Anderson (Acro Service Corp)) 3. Re: Installed app not showing up in add/remove programs (Blair) 4. Re: Same app, different versions (Blair) 5. Re: Same app, different versions (Gary Smith) 6. Re: How to determine current culture in WiX preprocessor (Blair) 7. Re: Verifying existance of a file using multiple properties (Bryan Reich) ---------------------------------------------------------------------- Message: 1 Date: Thu, 18 Feb 2010 20:20:57 +0200 From: "Oleksandr Y. Nechyporenko" <alexnc69...@gmail.com> Subject: [WiX-users] How to determine current culture in WiX preprocessor To: <wix-users@lists.sourceforge.net> Message-ID: <000301cab0c7$203587c0$60a097...@com> Content-Type: text/plain; charset="us-ascii" Hi All, Is it possible to determine the culture using preprocessors directives? I.e. I can specify in the Project Properties -> Build -> Cultures to Build several cultures. For example "en-US;uk-UA". After that I will receive 2 MSIs after the build. But I want to include some specific components to first MSI for en-US and some specific components to second MSI for uk-UA. The easiest way to do it is to use preprocessor directives. But I can't understand, how I can check for which culture the current build is preformed using <?if ?> operation. Thanks. ------------------------------ Message: 2 Date: Thu, 18 Feb 2010 22:12:09 +0000 From: "Dane Anderson (Acro Service Corp)" <a-daa...@microsoft.com> Subject: [WiX-users] Verifying existance of a file using multiple properties To: "wix-users@lists.sourceforge.net" <wix-users@lists.sourceforge.net> Message-ID: <693e11b59f9df94c95137755fe910e7b047ee...@tk5ex14mbxc105.redmond.corp.microsoft.com> Content-Type: text/plain; charset="us-ascii" I need to set up a launch condition that prohibits install if a particular file is NOT installed on the machine. What I have tried (that did not work) was: <Property Id="PATH32" > <RegistrySearch Id="Path32" Root="HKLM" Key="<actual key covered by NDA>" Name="Path" Type="raw" /> </Property> <Property Id="PATH64" > <RegistrySearch Id="Path64" Root="HKLM" Key="<actual key covered by NDA>" Name="Path" Type="raw" /> </Property> <Property Id="ADDIN" > <DirectorySearch Id="AddinDir" Path="[PATH32]" > <FileSearch Id="AddInFileSearch" Name="<actual file name covered by NDA>" /> </DirectorySearch> <DirectorySearch Id="AddinDir" Path="[PATH64]" > <FileSearch Id="AddInFileSearch" Name="<actual file name covered by NDA>" /> </DirectorySearch> </Property> <Condition Message="<message not relevant to the problem>" ><![CDATA[Installed OR ADDIN]]></Condition> The reason for TWO directory/file search nodes is, the one installer package must support installing on both 32 and 64 bit machines, and the registry key differs on the two platforms. On a 32 bit machine it is HKLM/SOFTWARE/<value covered by NDA> and on a 64 bit machine it is HKLM/SOFTWARE/Wow6432Node/<value covered by NDA> (The two <value covered by NDA> are the same). According to the Wix Docs, the Directory/File search nodes that do NOT find the file should not pass a value to the parent, giving me just the one that DID find the file. Since my own test machine is a 64 bit machine, I commented out the 32 bit directory search, and it STILL is not working. Any suggestions on how I can make this work? Dane Anderson ACRO Service Corp. ------------------------------ Message: 3 Date: Thu, 18 Feb 2010 14:52:05 -0800 From: "Blair" <os...@live.com> Subject: Re: [WiX-users] Installed app not showing up in add/remove programs To: "'General discussion for Windows Installer XML toolset.'" <wix-users@lists.sourceforge.net> Message-ID: <blu111-ds7782f70877ef3e2df7944cd...@phx.gbl> Content-Type: text/plain; charset="us-ascii" To understand this issue: your application (when it was per-user) was installed into the original user's account (not the admin's account). The admin simply allowed the installation (in UAC it is called "over-the-shoulder" authorization). Most installations should have Package/@InstallScope set to declare exactly what kind of installation they are. -----Original Message----- From: Gary Smith [mailto:gary.sm...@holdstead.com] Sent: Thursday, February 18, 2010 9:12 AM To: 'General discussion for Windows Installer XML toolset.' Subject: Re: [WiX-users] Installed app not showing up in add/remove programs > Sounds like your package is per-user. See the Package/@InstallScope element. Yes, setting the InstallScope to perMachine seems to have solved this issue. Thanks. ---------------------------------------------------------------------------- -- 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 ------------------------------ Message: 4 Date: Thu, 18 Feb 2010 14:52:53 -0800 From: "Blair" <os...@live.com> Subject: Re: [WiX-users] Same app, different versions To: "'General discussion for Windows Installer XML toolset.'" <wix-users@lists.sourceforge.net> Message-ID: <blu111-ds514a3affe04cddcaf2097cd...@phx.gbl> Content-Type: text/plain; charset="us-ascii" Yes. -----Original Message----- From: Gary Smith [mailto:gary.sm...@holdstead.com] Sent: Thursday, February 18, 2010 9:15 AM To: 'General discussion for Windows Installer XML toolset.' Subject: [WiX-users] Same app, different versions I have my installer for my library that installs just fine. For versioning controls issues, I need to be able to run the multiple different versions of the application. These are installed in the GAC and the file system. The file system includes the version number (c:\programs files\myapp\x.x.x.x\bin). For the product name for the installer, it's myapp x.x.x.x Is installing a second version of the same application as simple as changing the product guid? What's the best approach for this? Gary- ---------------------------------------------------------------------------- -- 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 ------------------------------ Message: 5 Date: Thu, 18 Feb 2010 15:05:08 -0800 From: Gary Smith <gary.sm...@holdstead.com> Subject: Re: [WiX-users] Same app, different versions To: 'General discussion for Windows Installer XML toolset.' <wix-users@lists.sourceforge.net> Message-ID: <034debcae934a74991e6e76b8da72d1418abaea...@hssbs.holdstead.local> Content-Type: text/plain; charset="us-ascii" > > Yes. > ... > > I have my installer for my library that installs just fine. For > versioning controls issues, I need to be able to run the multiple > different versions of the application. These are installed in the GAC > and the file system. The file system includes the version number > (c:\programs files\myapp\x.x.x.x\bin). For the product name for the > installer, it's myapp x.x.x.x > > Is installing a second version of the same application as simple as > changing the product guid? What's the best approach for this? > Blair, Thanks for the follow up. I have an msbuild task that generates a guid based upon the version number (i.e. the version number x.x.0.0 is converted to a string, then MD5'd) to give us a guid that is unique to each version but always reproducible. I'll try this as the product id and see how that works. Generally, when we make small incremental changes that don't break functionality, we increment x.x.0.0. These should be replace (as they are really updates) whereas the rest of the might be different functionality. Thanks for the follow up. Gary- ------------------------------ Message: 6 Date: Thu, 18 Feb 2010 15:09:31 -0800 From: "Blair" <os...@live.com> Subject: Re: [WiX-users] How to determine current culture in WiX preprocessor To: "'General discussion for Windows Installer XML toolset.'" <wix-users@lists.sourceforge.net> Message-ID: <blu111-ds265e351f6b6bad95c3559cd...@phx.gbl> Content-Type: text/plain; charset="us-ascii" The culture (as it comes from the .wixproj file) is currently used in linking and binding, not compiling. It is possible construct the build system such that you compile just one time and then link for each culture. As a result, the preprocessor doesn't necessarily ever have a way to know what culture(s) will eventually be built. What you need is a way to reference (component groups, perhaps) to include (or not) fragments in a culture-specific way. Let me think about this, I'm sure we can come up with a way. The way I solved this at a previous position I was in won't apply here, because they didn't use MSBuild/wix.targets to build their MSIs, so they were able to run candle once per-culture. -----Original Message----- From: Oleksandr Y. Nechyporenko [mailto:alexnc69...@gmail.com] Sent: Thursday, February 18, 2010 10:21 AM To: wix-users@lists.sourceforge.net Subject: [WiX-users] How to determine current culture in WiX preprocessor Hi All, Is it possible to determine the culture using preprocessors directives? I.e. I can specify in the Project Properties -> Build -> Cultures to Build several cultures. For example "en-US;uk-UA". After that I will receive 2 MSIs after the build. But I want to include some specific components to first MSI for en-US and some specific components to second MSI for uk-UA. The easiest way to do it is to use preprocessor directives. But I can't understand, how I can check for which culture the current build is preformed using <?if ?> operation. Thanks. ---------------------------------------------------------------------------- -- 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 ------------------------------ Message: 7 Date: Thu, 18 Feb 2010 23:11:09 +0000 From: Bryan Reich <bryan.re...@microsoft.com> Subject: Re: [WiX-users] Verifying existance of a file using multiple properties To: General discussion for Windows Installer XML toolset. <wix-users@lists.sourceforge.net> Message-ID: <4be42756fdf4734986b6381452c0c84123f96...@df-m14-01.exchange.corp.microsoft.com> Content-Type: text/plain; charset="us-ascii" Do you know what component(s) install the file in question? If so using ComponentSearch would likely be a better approach. -- Bryan -----Original Message----- From: Dane Anderson (Acro Service Corp) [mailto:a-daa...@microsoft.com] Sent: Thursday, February 18, 2010 2:12 PM To: wix-users@lists.sourceforge.net Subject: [WiX-users] Verifying existance of a file using multiple properties I need to set up a launch condition that prohibits install if a particular file is NOT installed on the machine. What I have tried (that did not work) was: <Property Id="PATH32" > <RegistrySearch Id="Path32" Root="HKLM" Key="<actual key covered by NDA>" Name="Path" Type="raw" /> </Property> <Property Id="PATH64" > <RegistrySearch Id="Path64" Root="HKLM" Key="<actual key covered by NDA>" Name="Path" Type="raw" /> </Property> <Property Id="ADDIN" > <DirectorySearch Id="AddinDir" Path="[PATH32]" > <FileSearch Id="AddInFileSearch" Name="<actual file name covered by NDA>" /> </DirectorySearch> <DirectorySearch Id="AddinDir" Path="[PATH64]" > <FileSearch Id="AddInFileSearch" Name="<actual file name covered by NDA>" /> </DirectorySearch> </Property> <Condition Message="<message not relevant to the problem>" ><![CDATA[Installed OR ADDIN]]></Condition> The reason for TWO directory/file search nodes is, the one installer package must support installing on both 32 and 64 bit machines, and the registry key differs on the two platforms. On a 32 bit machine it is HKLM/SOFTWARE/<value covered by NDA> and on a 64 bit machine it is HKLM/SOFTWARE/Wow6432Node/<value covered by NDA> (The two <value covered by NDA> are the same). According to the Wix Docs, the Directory/File search nodes that do NOT find the file should not pass a value to the parent, giving me just the one that DID find the file. Since my own test machine is a 64 bit machine, I commented out the 32 bit directory search, and it STILL is not working. Any suggestions on how I can make this work? Dane Anderson ACRO Service Corp. ------------------------------------------------------------------------------ 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 End of WiX-users Digest, Vol 45, Issue 74 ***************************************** ------------------------------------------------------------------------------ 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