|Windows Installer Basics: Features|
A Windows Installer "feature" generally reflects a choice a user will make at installation time (to install or not to install).
A feature can be a subfeature of other features and will be linked to one or more components to do the appropriate tasks.
The following dialog shows the a root "Complete" feature and some sub-features (the attributes can be used to adjust be available options):
The "Browse" button in the above dialog changes the directory for the selected feature. If its unavailable then directory modification is not available with this feature.
The following shows one way to allow feature selection of the "SOME_DIR" directory via the current feature (you could also specify the directory when creating the feature):
<$DirectoryTree Key="SOME_DIR" DIR="C:\Program Files\DefaultDir" Change=".">
If you wish to allow users to change the installation directories but not display the above dialog have a look at the "Browse Dialog - Changing Directory" tip.
Features and their attributes are stored in the "Feature" table. The MAKEMSI "Feature" command can be used to create, update or refer to features.
There are a number of ways you can specify which features to install on the MSIEXEC.EXE command line.
The name of a feature is not normally seen by a user (the description is what they see), however it does appear in some nearly useless event log messages (for example those related to repairs of Advertised features).
As the event log messages don't name the product, the feature name may be the only thing that will point you to the product (unless you like looking at GUIDs that is). This is the reason the optional default feature contains the version number and as much of the product name that will fit.
|Related Properties and Tables|
Other major related tables or properties are are: