Enable a Product Feature to install within a vendor msi
I have a vendor msi that I need to enable a product feature to install with the application. I would like to just like to add a transform and include this change on it instead of doing a install capture of the installation where I manually select the feature.
Appreciate any assistance and guidance on this.
thank you.
Answers (1)
Hola! Welcome to the forum? Questions section? I don't know. Anyways.
You're on the right track. Firstly nice work on not recapturing, never do this with a vendor MSI - it messes things up really bad and makes life even worse later (Upgrades etc).
Now your problem, I take it you have Installshield, if not grab InstEd, its free and it will do the job - I recommend InstEd or Orca for doing basic MST stuff, Installsield adds a lot of crap you just don't need. Once you have you chosen tool, open the MSI and then create a new MST.
Now you can approach this in three ways, I have written this in reference to MSI Tables, as you will have access to theses whether you use InstEd or Installshield. After reading the below, read this link as it will give you a better technical understanding.
1) In the PROPERTY Table you can set the property to the below, if the property does not exists, just create it. This is the big bang approach, install it ALL!
ADDLOCAL=ALL
*amended thanks to rad33k
2) This method you can find the INSTALLLEVEL of the FEATURE and just make sure your INSTALLLEVEL (Property) in step 1 is higher than the feature. You can find the INSTALLLEVEL value of the feature by look by looking in the FEATURE Table.
3) Probably the most granular method. You can edit the INSTALLLEVEL value in the FEATURE Table to a value lower than the INSTALLLEVEL in the PROPERTY Table. This has draw backs, as there might be some logic to install other features based on the feature required, ie Feature A requires Feature B when installing etc.
Good luck!
Comments:
-
Thanks rileyz for your assistance. I will give it a go. - souljah76 7 years ago
-
"INSTALLLEVEL=ALL" - really? I thought INSTALLLEVEL is an integer based property. Haven't you thought about ADDLOCAL=ALL ? :) - rad33k 7 years ago
-
Where's that thinking emoji when you need it. Right you are (: - rileyz 7 years ago