[This is preliminary documentation and subject to change.]
A number of system management benefits result from applications using the installer.
An administrator can use the installer to tailor an installation to the user's specific needs. Only those features that are useful for a group of users need to be available in the user interface. These features can be upgraded by the administrator without the user's intervention or knowledge.
The management API enables the installer to manage all file paths on behalf of a product or application. An application using the installer can ask the service for a path to a given component at runtime. This frees applications from dependency on static file paths which often change between machines and can sometimes point to missing files.
An application using the installer can populate its user interface with features that are run locally or from the source with little or no visible difference to the user. An application runs identically regardless of the actual installation state because the installer resolves component file locations by querying the installation database. It can in some cases be more efficient to run a feature from the source instead of locally.
The installer can remove unused features from the local hard drive, as well as install features on demand, because the installer increments a usage count when applications request features. Applications therefore can keep track of usage statistics and request that the installer remove components that are not being used. Because the installer database is system-wide, the installer can keep usage counts of a feature for all client applications.