views:

611

answers:

2

I have a windows installer project which installs some software (winform, service, mce addin). During the installation I need to search the machine for a registry key. This is done with with the "Launch Condition" -> "Add Registry Search" (Deployment Project).

I have filled out all the properties right, and checked against the regestry that the value actually can be found.

The problem is that the "Registry Search" searches in the x86 part of the registry (HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\...) although my system is a x64 and the deployment setup is also set to x64.

Does anyone know how to force the "Registry Search" to search the x64 registry? Or know about a workaround?

The weird thing about this, is that Registry setting in the deployment setup is writing to the right registry (x64). My idea is that the "Registry Search" program is only developed to the x86 architecture, and therefore can't read the right registry.

I found this article from microsoft, so it seams that they know about this problem. https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=110105&wa=wsignin1.0#details

My system is:
Windows 7 64bit
Visual Studio 2008

A: 

I have the exact same problem. I have my registry created under HKLM\SOFTWARE but my app is actually looking for this registry in HKLM\SOFTWARE\Wow6432Node. Any attempt to add my app's registry under the key "Wow6432Node" under Software (which I added in the project) in the setup project fails.

vijay
A: 

I found a solution for this. I modified the script made from Microsoft, and the script have to run after each build. Check out how here

Joonas Kirsebom