Title: Application Support with MSI
1Application Support with MSI
2Windows Installer
- Synonyms MSI
- During development phase MSI Microsoft
Installer - Today (sometimes ...) Managed software
installation (.MSI) - OS integration
- WinNT/2000 service running LocalSystem
- Windows 9x system program
- Optimized for Active Directory
- Integration in Group Policies
- Integration in Add / Remove Programs
- Support for locked down workstations
3Installation Process
- Installation process
- Validate MSI and Transform, check resources
- Build Installation script depending on
environment - Execute script step by step and build rollback
script in parallel - Log installation
4Advantages of Windows Installers
- Improvement of the installation process
- Automatic rollback if something fails
- Installation on demand
- Protection of the OS, version control of dlls
- Stability and consistency of an installation
- Diagnostic and repair of problems during
installation - Deinstallation without DLL conflicts(the newest
version of a dll is kept on machine!)
5Charakteristik des Windows Installers
- Database oriented installation
- Definition of the Post-Install-State in MSI
file - Description of final state
- Installation is based on roles, not on scripts
- Achieving the final state
- Archived status must be maintained
- Maintaining the final state
- State Management
6Example MS Office (simplified)
Product (Office)
7Example Registry tables
8Windows Installer und Transforms
- Customizing of MSI based installations
- Description of deltas between original MSI
packaged and customized installation - Saved in MST files
- Multiple transforms for one MSI packages can be
applied - Single execution of transform(s)
- MSI packaged is executed with transform(s)
- Not able to apply an additional or changed
transform after installation (only solution
uninstall software completely, reinstall the
software with different transforms)
9Mode of Operation
Step 1preparation
Step 2Customizing
Step 3Installation
Individualtoolkit fromvendor
MSTTransform
MSIPackage
MSTTransform
10Extensions
- Custom Actions
- Only chance to make actions outside the MSI
engine - Supported are EXE, DLL, VBScript or Jscript
- Example installation of device drivers ...
- MSI cannot control Custom Actions
- Every action can be done (reboot, ...)
- Important extensions, but potentially dangerous
11Problems with MSI
- MSI was developed by Office 2000 team
- Focus was a robust setup technology
- Technical problems with MSI
- Cannot replace a dll with an OLDER version
- Cannot install system files
- Cannot install device drivers
- Service installation under a special account
stores clear text password in MSI file - Configure on first use dialogues
- Configuration - Transforms
- No universal tool to create transforms
- The quality and functionality depends on tools
from software vendor - ? You need luck if vendors toolkit fullfils all
your needs - Example Mail clients
- Transforms can only applied once
12Problems with MSI
- Software life cycle
- ????
- Microsoft
- Office 2000 many custom actions, manipulation
MSI tables after execution (!!!) - Resistance from other Microsoft groups (SP1,
Visual Studio) - ?1. Focus was installation process, not software
management !!! - 2. MSI is a grand father robust state machine
- 3. How can we use MSI based installations in
an distributed environment ... ?
13Overview
- Software distribution
- packaging, distribution, installation of software
- Rollout as single process
Software-Management
- Software maintenance
- Customization and maintenance
- Time or role based execution (multiple)
- Client management
- Customization and maintenance of OS or system
software - Create, deploy and execute configuration scripts
- Time of role based execution (multiple)
14Overview
15Overview
16 Targeting - Windows Installer
- Targeting in a pure Win2000 environment with
Active Directory and GPO - Group policies (GPO)
- GPOs managed and applied in Active Directory
- GPO can contain MSI packages and transforms
- Set access rights to GPO, MSI, MST and source
files - Set access rights to OUs
- High complexity !!
- No targeting for Windows NT 4.0 and Windows 9x
- No detailed execution planning
- Time frame, number of execution, ...
17 Targeting with Group Policies
Use cases
Domain
OU
Active Directory Object(Domain, Site or OU)
membership
Group Policy Object
permission
Software 1...n package
permission
complexity
MSI file
permission
x MST files
permission
Source files
permission
18Conclusion
- A tool is needed for repackaging and creating
transforms - Needed for legacy software and customization
- Pool of software can be offered with AD
- User can install all applications he needs
- Some apps are preinstalled
- For a comprehensive system or software management
an additional tool is needed for - Targeting, customization, support for NT4/Win9X,
deployment, applying changes, ...
19 Maintain
Customization of Windows 2000 applications
without NetInstall
with NetInstall
Customization
NI Projekt
Group policies,First Start Wizard, ...
NI Spy
Configuration
NI Projekt
firstInstallation
Installation
Windows OS
20 Maintain
Customization of Windows 2000 applications
without NetInstall
with NetInstall
Customization
Group policies,First Start Wizard, ...
No action needed NetInstall checks customization
Configuration
NI Projekt
Installation
Windows OS
21Reference
- Microsoft (SMS)
- www.microsoft.com/sms
- Wise Solutions (Wise)
- www.wisesolutions.com
- InstallShield/NetSupport (NetInstall)
- www.netsupport-gmbh.de
- www.installshield.com
- Seagate (WinInstall)
- www.seagatesoftware.com