Hi
I am sharing about basic question about Windows Installer and logical structure of a package which may ask in interviews,one of my colleague got the same question
I am sharing about basic question about Windows Installer and logical structure of a package which may ask in interviews,one of my colleague got the same question
The Windows
Installer is a service
which contains set of functions used for the installation,
maintenance, and removal of software on modern Microsoft Windows
systems.
Every
package will maintain one Logical structure
internally
Package:
A
package describes the installation of one or more full products
Package
has unique identifier GUID(globally
unique identifier )
called Package code .
Products
A
single, installed, working program (or set of programs) is a product.
A product is identified by a unique GUID (the ProductCode property)
providing an authoritative identity throughout the world. The GUID,
in combination with the version number (ProductVersion property)
allow for release management of the software's files and registry
keys. For example, changing an EXE in the software application may
require the ProductCode and/or ProductVersion to be changed for
release management of the software application. Only adding a launch
condition (with the software application remaining exactly the same
as the previous version) would still require the PackageCode to
change for release management of the .MSI file itself.
Features
A feature is
a hierarchical group of components—a feature can contain any number
of components and also other features called subfeature.The
end user directly interact with features of a product.He may select
or deselect which feature he wants to install in his system by
selecting those features at the time of installation.
Components:
A component is the basic unit of a product—each component is treated by Windows
Installer as a unit
Components
can contain files, directories, COM components, registry keys,
shortcuts, and other data.
The
end user does not directly interact with components.
Components
are identified globally by GUIDs Called component code,
thus
the same component can be shared among several features of the same
package or multiple packages.
Key paths:
A key
path is a specific file, registry key, or ODBC data
source that the package. Because a file is the
most common type of key path, the term key
file is
commonly used. A component can contain at most one key path; if a
component has no explicit key path, the component's destination
directory is taken to be the key path. When an MSI-based application
is launched, Windows Installer checks the existence of these critical
files or registry keys (that is, the key paths). If there is a
mismatch between the current system state and the value specified in
the MSI package (e.g., a key file is missing), then the related
feature is re-installed. This process is also known
as self-healing or self-repair. No two
components should use the same key path(Component Rule).
