condition on features
how can I install a feature based on a system search
I have 2 features but I want to install only one based on a condition in the registry
I have created the system search property based on the 2 reg keys
and I have conditioned the components in each feature
ie hklm\software\servera appsearch STRFINDA
hklm\software\serverb appsearch STRFINDB
feature A
component A
condition STRFINDA=regvaluea
feature B
component B
condition STRFINDB = regvalueb
this works fine but how do i condition the features instead
I have 2 features but I want to install only one based on a condition in the registry
I have created the system search property based on the 2 reg keys
and I have conditioned the components in each feature
ie hklm\software\servera appsearch STRFINDA
hklm\software\serverb appsearch STRFINDB
feature A
component A
condition STRFINDA=regvaluea
feature B
component B
condition STRFINDB = regvalueb
this works fine but how do i condition the features instead
0 Comments
[ + ] Show comments
Answers (18)
Please log in to answer
Posted by:
pjgeutjens
15 years ago
install level in the property table is set to 100
That sounds a bit high, ofcourse depends on the default installlevels of your 2 features. But try the following:
Set INSTALLEVEL in property table to 3
Set InstallLevel of your 2 features to 4
Set level value in Condition table to 3
Make sure all features that always get installed have installlevel of 3 or lower.
If you want to use higher values, go ahead, but keep the same higher-lower relationships.
Posted by:
anonymous_9363
15 years ago
Posted by:
anonymous_9363
15 years ago
Presumably, 'regvaluea' and 'regvalue' are the actual values you're expecting to be returned? That is, if you're testing for, say, an uninstall string, then 'regvaluea' would be the actual string.
Equally, I presume you have STRFINDA/STRFINDB initialised to zero in the Property table?
Why not post (in CODE tags, so that you can space things out nicely) the AppSearch, Condition, Property and RegLocator tables?
Equally, I presume you have STRFINDA/STRFINDB initialised to zero in the Property table?
Why not post (in CODE tags, so that you can space things out nicely) the AppSearch, Condition, Property and RegLocator tables?
Posted by:
bob_msi
15 years ago
Posted by:
captain_planet
15 years ago
Posted by:
bob_msi
15 years ago
Posted by:
captain_planet
15 years ago
Posted by:
bob_msi
15 years ago
appsearch table
property signature_
STRA New signature1
STRB New signature 2
reglocator table
signature_ Root key name type
new signature1 2 software\myname server 2
new signature2 2 software\myname server 2
property table
property value
STRA 0
STRB 0
condition table
feature_ level condition
A 3 STRA="thisisitvaluea"
B 3 STRB="thisisitvalueb"
this is what my tables look like and when I install the msi it installs both features
what am I doing wrong[:@]
Posted by:
anonymous_9363
15 years ago
Posted by:
pjgeutjens
15 years ago
STRB New signature 2
The space before the 2 is a typo? If it is in your tables remove it.
Also what's the default INSTALLLEVEL of your MSI set to?
If I'm not mistaken it should be lower than the default installlevel of the features (so they don't get installed by default) and the level value in the condition table should set the installlevel of the features to lower than or equal to your MSI's INSTALLLEVEL.
Hope it helps
PJ
Posted by:
bob_msi
15 years ago
Posted by:
captain_planet
15 years ago
Posted by:
captain_planet
15 years ago
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
so that the conversation will remain readable.