Showing results for 
Show  only  | Search instead for 
Did you mean: 
Level 2

Conditional installation of a merge module


I want to install all files of a merge module, if .NET Framework 3.5 or higher is installed on the computer. If it is not installed, a message should appear.

Therefore I added the following system search (registry) to the merge module project:
search for - HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5
search in - version
store in - NETFRAMEWORK35

The property NETFRAMEWORK35 appears in AppSearch with a new signature. This signature appears under RegLocator.

Whatelse do I have to do, so that I can evaluate the property NETFRAMEWORK35 in a condition?

Is it correct to define the system search in the merge module project or should it be defined in the InstallScript MSI Project where I connected a feature to the merge module? Should I add a condition to the feature?

Any help is appreciated!

Labels (1)
0 Kudos
1 Reply
Level 10

You should be able to put it in the merge module, but be aware that the property name will have the MM GUID appended to it in the main project. (This is done by design so that items in the MM cannot overwrite items named the same in the main project.)

So you need to do one of two things: either append the GUID to the property name in your condition check in the main project, or go into the direct editor in the merge module and remove the GUID from the property name wherever it appears. Personally, I'd use the GUID in the condition check to ensure that you never accidentally overwrite a main project property if you end up using the MM somewhere else.
0 Kudos