Setting an extra 32-bit registry value is definitely a good idea, unfortunately we've already shipped the main program, so it's a little late for us to add it :(
Running 32 bit apps in a 32 bit shell is a great idea, but it seems less than ideal that it excludes all possibility of viewing the registry as it "really" is. On Mon, Apr 4, 2011 at 4:13 PM, Castro, Edwin G. (Hillsboro) <edwin.cas...@fiserv.com> wrote: > Windows (the OS) will redirect 32-bit apps in such a way that they can't tell > that they are executing on a 64-bit OS. The 32-bit app will blissfully > execute as if it was in fact executing on a 32-bit OS as it was designed to > do. > > A 32-bit Windows Installer package is executed in a similar context meaning > that it will *NOT* have the ability to see any of the 64-bit portions of the > 64-bit OS. A 32-bit Windows Installer package will always think it is running > on a 32-bit OS. > > Perhaps, one option might be to set a 32-bit registry value when the 64-bit > package installs. That way the 32-bit package can check for this 32-bit > registry value and stop itself if it is found. > > Edwin G. Castro > Software Developer - Staff > Digital Channels > Fiserv > Office: 503-746-0643 > Fax: 503-617-0291 > www.fiserv.com > Please consider the environment before printing this e-mail > >> -----Original Message----- >> From: Daetrin Nickname [mailto:gfin...@gmail.com] >> Sent: Monday, April 04, 2011 3:49 PM >> To: General discussion for Windows Installer XML toolset. >> Subject: Re: [WiX-users] Registry Search in x86 installers doesn't work >> properly on x64 machines >> >> We actually already have two different installers. However the problem is >> that we need to account for the possibility that they've installed an x64 >> version of the main program on an x64 machine, and then try to install the >> x86 version of the utility on the same machine. So the x86 installer needs to >> be able to detect for the existence of _both_ the >> x86 version and the x64 version of the main app. >> >> Obviously this wouldn't be the smartest thing for the user to do, and in fact >> what we're performing this test for in part is to be able to warn the user >> not >> to perform the installation under those circumstances. However we can't tell >> them not to do it if we can't even tell the other component is there. >> >> On Mon, Apr 4, 2011 at 3:20 PM, Jacques Eloff <repst...@gmail.com> wrote: >> > I believe you need to issue two different installers and set the Win64 >> > attribute for each RegistrySearch element. >> > >> > You should not specify the Wow3264Node in the path. >> > >> > If you need to do this in a single installer, you will need to >> > condition the search so that it only triggers for the appropriate OS >> > type using the >> > VersionNT64 property, but I think that goes against 'spirit' of >> > installers and I'm not sure if that's even possible >> > >> > Jacques >> > >> > On Mon, Apr 4, 2011 at 11:58 AM, Daetrin Nickname <gfin...@gmail.com> >> wrote: >> > >> >> We're trying to do a couple registry searches at the beginning of a >> >> utility installation to check for the existence of our main product >> >> so we can take certain actions. Everything works fine when using the >> >> x64 installer on an x64 machine, but when we try the x86 installer >> >> all the registry checks fail, apparently because it's looking in >> >> "HKEY_LOCAL_MACHINE32" rather than "HKEY_LOCAL_MACHINE". Why >> is it >> >> trying to use a non-existent root element, and is there any way to >> >> force it to use the right location? This seems like it ought to be a >> >> simple question with an obvious answer, but i can't find a solution >> >> in the mailing list logs or anywhere else with google. >> >> >> >> Here's the wix code: >> >> >> >> <Property Id="OURPRODUCT_8_0_INSTALLED"> >> >> <RegistrySearch Id="OP80Present" Type="raw" Root="HKLM" >> >> Key="SOFTWARE\OurCompany\OurProduct\8.0" >> Name="InstallPath" >> >> /> >> >> </Property> >> >> >> >> <Property Id="OURPRODUCT_8_0_WOW6432_INSTALLED"> >> >> <RegistrySearch Id="OP80Wow6432Present" Type="raw" >> Root="HKLM" >> >> Key="SOFTWARE\Wow6432Node\OurCompany\OurProduct\8.0" >> >> Name="InstallPath" /> >> >> </Property> >> >> >> >> Here's the log for the (working) x64 version: >> >> >> >> AppSearch: Property: OURPRODUCT_8_0_INSTALLED, Signature: >> OP80Present >> >> MSI (c) (60:C8) [11:22:05:150]: PROPERTY CHANGE: >> >> Adding OURPRODUCT_8_0_INSTALLED property. >> >> Its value is 'C:\Program Files\OurCompany\OurProduct\'. >> >> >> >> AppSearch: Property: OURPRODUCT_8_0_WOW6432_INSTALLED, >> Signature: >> >> OP80Wow6432Present >> >> MSI (c) (60:C8) [11:22:05:150]: >> >> Note: 1: 1402 >> >> 2: >> HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\OurCompany\OurProd >> uct\8.0 >> >> 3: 2 >> >> >> >> So it found the x64 install but was unable to find the x86 install >> >> (under Wow6432Node) so all is correct. >> >> >> >> Here's the x86 install log: >> >> >> >> AppSearch: Property: OURPRODUCT_8_0_INSTALLED, Signature: >> OP80Present >> >> MSI (c) (C0:14) [11:09:07:493]: >> >> Note: 1: 1402 >> >> 2: HKEY_LOCAL_MACHINE32\SOFTWARE\OurCompany\OurProduct\8.0 >> >> 3: 2 >> >> >> >> AppSearch: Property: OURPRODUCT_8_0_WOW6432_INSTALLED, >> Signature: >> >> OP80Wow6432Present >> >> MSI (c) (C0:14) [11:09:07:493]: >> >> Note: 1: 1402 >> >> 2: >> >> >> HKEY_LOCAL_MACHINE32\SOFTWARE\Wow6432Node\OurCompany\OurPr >> oduct\8.0 >> >> 3: 2 >> >> >> >> It's looking under HKEY_LOCAL_MACHINE32, so it doesn't find the >> >> existing x64 install. >> >> >> >> Now what's really weird is that if i install the x86 version of the >> >> main product and then try to install the x86 version of the utility >> >> it claims to detect _both_ versions in the registry! >> >> >> >> AppSearch: Property: WORKFLOW_8_0_INSTALLED, Signature: >> OP80Present >> >> MSI (c) (10:78) [11:49:37:228]: PROPERTY CHANGE: >> >> Adding OURPRODUCT_8_0_INSTALLED property. >> >> Its value is 'C:\Program Files (x86)\OurCompany\OurProduct\'. >> >> >> >> AppSearch: Property: WORKFLOW_8_0_WOW6432_INSTALLED, >> Signature: >> >> OP80Wow6432Present >> >> MSI (c) (10:78) [11:49:37:229]: PROPERTY CHANGE: >> >> Adding OURPRODUCT_8_0_WOW6432_INSTALLED property. >> >> Its value is 'C:\Program Files (x86)\OurCompany\OurProduct\'. >> >> >> >> I don't care too much about the false positive in this case, i just >> >> really want to fix the false negative in the case of installing x86 >> >> on top of x64. >> >> >> >> Thanks for any help! >> >> >> >> >> >> --------------------------------------------------------------------- >> >> --------- Create and publish websites with WebMatrix Use the most >> >> popular FREE web apps or write code yourself; WebMatrix provides all >> >> the features you need to develop and publish your website. >> >> http://p.sf.net/sfu/ms-webmatrix-sf >> >> _______________________________________________ >> >> WiX-users mailing list >> >> WiX-users@lists.sourceforge.net >> >> https://lists.sourceforge.net/lists/listinfo/wix-users >> >> >> > ---------------------------------------------------------------------- >> > -------- >> > Xperia(TM) PLAY >> > It's a major breakthrough. An authentic gaming smartphone on the >> > nation's most reliable network. >> > And it wants your games. >> > http://p.sf.net/sfu/verizon-sfdev >> > _______________________________________________ >> > WiX-users mailing list >> > WiX-users@lists.sourceforge.net >> > https://lists.sourceforge.net/lists/listinfo/wix-users >> > >> >> ------------------------------------------------------------------------------ >> Xperia(TM) PLAY >> It's a major breakthrough. An authentic gaming smartphone on the nation's >> most reliable network. >> And it wants your games. >> http://p.sf.net/sfu/verizon-sfdev >> _______________________________________________ >> WiX-users mailing list >> WiX-users@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/wix-users > ------------------------------------------------------------------------------ > Xperia(TM) PLAY > It's a major breakthrough. An authentic gaming > smartphone on the nation's most reliable network. > And it wants your games. > http://p.sf.net/sfu/verizon-sfdev > _______________________________________________ > WiX-users mailing list > WiX-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wix-users > ------------------------------------------------------------------------------ Xperia(TM) PLAY It's a major breakthrough. An authentic gaming smartphone on the nation's most reliable network. And it wants your games. http://p.sf.net/sfu/verizon-sfdev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users