Post on 06-Apr-2018
transcript
8/3/2019 Software Installiation & Maintainance
1/50
Introduction
Windows 2000 Software Installation and Maintenance allows administrators to manage software
for their organization and reduce their organization's Total Cost of Ownership (TCO).Administrators use Software Installation and Maintenance to centrally manage the software that
is available to the users in their organization, and to ensure that users have the software theyrequire for their jobs.
Software Installation and Maintenance is a key Windows 2000 IntelliMirror feature. Thefollowing table (see table 1) highlights the Windows 2000 Change and Configuration
Management and IntelliMirror features, benefits, and the technologies that enable the features.
Table 1 Windows 2000 Change and Configuration Management
What This Paper Contains
This paper presents background and architectural information about the IntelliMirror Software
Installation and Maintenance feature. It is intended for Information Technology planners andadministrators who want to understand how their organization can benefit from using this
feature.
This paper does not provide information on how to use Software Installation and Maintenance.For information on how to use the feature, refer to the Windows 2000 Server online Help, and
the Software Installation and Maintenance Walkthrough, both of which are available from theMicrosoft Windows 2000 Server Web site and TechNet.
8/3/2019 Software Installiation & Maintainance
2/50
This paper does not provide information on how to use Software Installation and Maintenance inconjunction with Microsoft Systems Management Server. For more information on Microsoft
Systems Management Server, see Appendix E.
Prerequisite Information
The IntelliMirror Software Installation and Maintenance feature relies on both the Windows2000 Active Directory service and Group Policy. Readers will find the concepts in this paper
easier to understand if they are familiar with both Active Directory and Group Policy. Forinformation on these subjects, refer to the white papers available from the Windows 2000 Server
technology centerhttp://www.microsoft.com/windows2000/ on TechNet.
Top of page
Software Installation and Maintenance Overview
Administrator Benefits
By using Software Installation and Maintenance, administrators can ensure that users have the
software they need for their jobs, without requiring the administrator or technical supportpersonnel to visit each computer to install it. Administrators can centrally manage:
y Initial deployment of software, including productivity applications, in-house or Line ofBusiness (LOB) applications, and operating system service packs.
y Upgrades of existing software to a new version or replacement software, includingWindows 2000 operating system upgrades.
Administrators can deploy software as either assigned or published. Assigned software isdeployed to all users who must have the software to perform their jobs. Software can also beassigned to computers. Published software is made available to users who might want to use the
software, allowing users to decide whether to install it. For more information on assigning andpublishing software, see the section "The Targeting Phase."
Organizational Benefits
With Software Installation and Maintenance, administrators can ensure that the software usersrequire to perform their jobs is always available. Administrators can customize how software is
deployed; for example, they can deploy only the software that users require, or they can deploy
just the features of the software users require.
Because Software Installation and Maintenance utilizes Active Directory, Group Policy, and
Windows Installer, additional benefits are provided. For example, if a user inadvertently deletesan assigned application, it will continue to be available. If users roam from one computer to
another, their assigned software is always available for them to use.
8/3/2019 Software Installiation & Maintainance
3/50
Administrators use Group Policy to control what software users can install and from whichmedia. For instance, administrators can set a policy that prevents users from installing software
from local media such as a CD-ROM or diskette.
By leveraging Windows Installer, Software Installation and Maintenance allows the
administrator to limit the security level of users users do not have to be administrators of theirWindows 2000 Professional computer to install software. This means that users are only grantedthe appropriate level of permissions (and no more) for them to do their job.
End User Benefits
Users benefit by having access to their required software, and because of the reliability andresilience provided by Windows Installer, users have an easier and more consistent experience.
Users can get the software they require from the Add/Remove Programs in the Control Panel.
They can also manage the software on their computer from this location, including installing,
repairing, modifying, or removing it.
Software Installation and Maintenance addresses another end-user scenario. Users frequently
receive documents by e-mail attachment. If the software associated with the document is notinstalled on the user's computer, when they try to open this document, they are presented with
the Open with dialog box, and they have to determine which of their currently installed softwareprograms might be able to open the document. In Windows 2000, when the user double-clicks on
the attachment, Software Installation and Maintenance installs the software that the administratorspecified should be used to open and edit the document, and then Windows 2000 opens it.
Top of page
Phases of Software Management
Administrators typically have to manage several phases of software deployment, includingpreparation, distribution, targeting or scope of management, and installation.
The software deployment phases may differ from those used by your organization; however, for
the purpose of this paper, the phases listed above will be used.
The Preparation Phase
The main task of the preparation phase is to prepare the software for distribution, targeting, andinstallation.
Windows 2000 Software Installation and Maintenance leverages Windows Installer, whichrequires the use of Windows Installer packages (.msi files) for the software. The Windows
Installer is a base service of the Windows Operating System and is available with Windows2000, and for Windows NT 4.0, Windows 98, and Windows 95.
8/3/2019 Software Installiation & Maintainance
4/50
Windows Installer Packages and Transforms
A Windows Installer package contains all the information necessary to describe to WindowsInstaller how to set up an application in every conceivable situation: various platforms, different
sets of previously installed products, earlier versions of a product, and numerous default
installation locations. Some applications such as Microsoft Office 2000 provide their own .msifiles; these are referred to as natively authoredWindows Installer packages.
You can obtain Windows Installer packages in a couple of ways. The author or publisher of thesoftware can supply a natively authored Windows Installer package. For example, Microsoft
Office 2000 provides a Windows Installer package (.msi file). Alternatively, administrators canrepackage software for use with Windows Installer. Many organizations repackage software to
customize it; this process may entail using Microsoft Systems Management Server. RepackingforWindows Installer is fundamentally the same as using any repackaging tool, but the output
ofWindows Installer repackaging process is a package that can be used by both Windows 2000Software Installation and Maintenance and Microsoft Systems Management Server.
For additional information on Windows Installer, including information on how packages areauthored and repackaged, see Appendix A: Creating and Customizing Windows Installer
Packages.
It is also possible to customize an .msi package to suit your particular requirements. Forexample, an organization may decide that they do not want to use all of the features of the
software, and they need to customize the software to remove the unnecessary features. Considerthe scenario where an organization decides that they do not want to distribute clip art with their
presentation software, or that they have a customized dictionary that they want to distribute witha word processor.
In the past, to customize the installation of software, administrators had to modify the setup
instructions by editing the setup information file (.sif), or they had to repackage the software tomeet their requirements.
The Windows Installer supports a robust model of customization by allowing the administratorto create a transform (.mst file). A transform is a specialized Windows Installer package that
when associated with Windows Installer at deployment time modifies the original WindowsInstaller package.
Transforming the software is a more efficient method than editing the software installation
instructions or repackaging the software to eliminate unwanted features. The Windows Installerarchitecture was created with the idea of creating transforms for software in mind.
Microsoft Office 2000 includes a Custom Installation Wizard (CIW) that provides administrators
with a high degree of control over the installation of Office 2000. The output of the CustomInstallation Wizard is a transform. Administrators can use the Custom Installation Wizard tocustomize which features are installed, when they install, the (target) location where the files
install, and other aspects of the Office 2000 installation and configuration.
8/3/2019 Software Installiation & Maintainance
5/50
The key point is that Windows Installer gives administrators more control over the softwareinstallation process, eliminating the need to edit the original author's setup instructions or
repackage the application. For additional information on transforms, see Appendix A: Creatingand Customizing Windows Installer Packages.
Windows 2000 supports the customization of software using Group Policy. In this scenario, theapplication is written to use Group Policy, and provides Group Policy settings for the softwarethat administrators can activate. For example, an application could provide a policy setting that
controls whether a user can save data in a location other than the My Documents folder. Formore information on developing software that provides Group Policy settings, see the
information in Appendix C: Certified for Windows 2000.
During the development of the Software Installation and Maintenance feature, customers in theJoint Development Program (JDP) requested a way to make existing software appear in the
Add/Remove Programs in the Control Panel. Administrators can make a ZAP (.zap) file thatdescribes the existing setup program to Windows Installer, and allows administrators to manage
the existing setup with Software Installation and Maintenance. A .zap file is a text file (similar to.ini files) that provides information about how to install a program, the application properties,
and the entry points that the application should install.
Additional information on ZAP files, and their limitations, is documented throughout this paper
and in Appendix D: The ZAP File Format.
The Distribution Phase
The main task of the distribution phase is to get the software copied to software distributionpoints (SDPs), which are network locations from which users can get the software they require.
To create a software distribution point, you must set up network shares for the software, applythe appropriate permissions so that users can access the software, and then replicate the software
(including the executable programs, Windows Installer packages, and any transforms) to thesoftware distribution points. Typically, these software distribution points are physically located
throughout the organization so that users can always get the software from a distribution pointthat is close to their office.
Note: Windows 2000 Software Installation and Maintenance does not directly address the
distribution phase. Administrators must perform separate steps outside of the scope of SoftwareInstallation and Maintenance to create and manage these software distribution points.
Administrators may choose to leverage other Windows 2000 services, such as the DistributedFile System (Dfs), to manage the distribution phase.
Best Practice Microsoft Systems Management Server (SMS) version 2.0 supports a robust
distribution model that administrators can use with Windows 2000 Software Installation andMaintenance.
The Targeting and Scope of Management Phase
8/3/2019 Software Installiation & Maintainance
6/50
During the targeting phase, administrators must determine which software users should get basedon the users' specific job requirements.
The scope of management for Software Installation and Maintenance is defined by Group Policy,
which in turn is tied to Active Directory. Administrators use the Software Installation Microsoft
Management Console (MMC)1 Management Console (MMC) is an ISV-extensible, commonpresentation service for management applications. MMC is included in the Windows 2000operating system, ans will also run on the Windows NT 4.0, Windows 95, and Windows 98
family of operating systems. MMC provides a common host environment for snap-ins, providedby Microsoft and third-party software vendors. Snap-ins provide the actual management
behavior; MMC itself does not provide any management functionality. The MMC environmentprovides for seamless integration between snap-ins. snap-in, an extension of the Group Policy
snap-in, to deploy software to groups of users and computers managed by Group Policy objects(GPOs) that are associated with these Active Directory containers: sites, domains, or
organizational units (OUs). Any user or Windows 2000-based computer that is contained in oneof these Active Directory containers is a potential target for software that is managed by
Software Installation and Maintenance.
Because of the relationship to both Group Policy and the Windows 2000 Active Directory, theSoftware Installation and Maintenance feature was designed specifically for Windows 2000. This
feature relies on the technology within Windows 2000 Server to manage software on Windows2000 Professional.
In contrast, the scope of software installation and maintenance using Microsoft SystemsManagement Server (SMS) is a dynamic collection, which is typically hardware or software
inventory based. This means that administrators can use SMS to manage software for users andcomputers running Windows 2000, Windows NT 4.0, Windows 95, and Windows 98. For more
information on Systems Management Server, see Appendix E.
As part of the targeting phase, it is useful to consider issues related to the software life cycle,discussed next.
The Software Life Cycle
Administrators must be able to manage software throughout the software's life cycle. Thesoftware life cycle addresses key issues for the administrator, allowing the administrator to
manage software evaluations, rollouts, and upgrades between software versions.Using SoftwareInstallation and Maintenance, administrators can manage software throughout its life cycle,
shortening the time it takes to deploy the software to users, and increasing users' productivity.
Windows 2000 Software Installation and Maintenance was designed with the following softwarelife cycle in mind (see figure 1):
8/3/2019 Software Installiation & Maintainance
7/50
Figure 1: The Software Life Cycle
Version One: Deployed
The software life cycle begins when an administrator deploys version one of the software. Userslearn and begin using the software. This is considered asteady or known state that administrators
would like to preservethe software is deployed and users are productive.
Version Two: Release and Evaluation
Because of either changes to business requirements, or the availability of a new version of the
software with improved productivity features, administrators have to consider deploying the newversion of the software.
Before deploying a new version, administrators typically conduct an evaluation or test phase.
During the test phase, they deploy the software to a small group of users. This test phase allowsthe administrator to learn about any deployment issues and to validate that the improved
productivity of the new software can be realized within their organization.
To evaluate the software, administrators designate a small group of users who currently use theexisting version of the software to begin using the new version. Administrators evaluate
compatibility issues with existing workflow; identify any training, conversion, and supportrequirements; and determine what will be required to deploy the application and gain the
productivity improvements for their organization.
During the evaluation, the majority of the organization will continue to use the currently
deployed version of the software.
Version Two: Rollout
Although it would be preferable to roll out the new version of the software to everyone at once
after testing is completed, business requirements usually prevent this approach.
A more typical scenario is to gradually upgrade users from version one to version two. As anexample, consider an organization that has successfully tested a new spreadsheet application, and
would like to roll it out. However, it is tax season and it would be disruptive for the financedepartment to make the change at this point. Therefore, administrators may move everyone
8/3/2019 Software Installiation & Maintainance
8/50
except the finance group to the new version. After tax season is over, the finance department canupgrade to the new version.
Because rollouts often occur over a long period of time, any deployment solution must support a
granular rollout of the new application to groups of users.
What to Do with Version One?
After rolling out the new version of the software to their organization, administrators have to
consider what to do with the older version.
The software deployment life cycle gives administrators two choices at this point:
y Force an upgrade to the new version: when there is no longer a valid business reasonfor users not to upgrade to the new version, supporting two versions may add an
unwarranted support burden. Administrators need to be able to mandate that everyone
upgrade to the new version. Requiring everyone to upgrade allows administrators toremove the old version of the software from the software distribution points.y Leave the existing version in a non-supported state: there may be cases where some
users in the organization don't want to upgrade to the new version of the software, and itis not considered a burden to the organization to allow both versions to be available. In
such cases, administrators may leave version one in a non-supported mode, that is, userscan still use version one, but no support will be provided for it. If the users delete the old
version, they will have to install the new version as the replacement. New users, who hadnever installed the previous version, can only install the new version.
Version Two: Deployed
At this point the administrator is back to the steady state; a version of the software is deployedthat users can use to perform their job.
Windows 2000 Software Installation and Maintenance helps the administrator support the steady
state. Assigned applications are resilientusers cannot delete them by mistake, and WindowsInstaller can repair damaged applications.
Version One: Removed
The last state in the software deployment life cycle is when version one of the software has to be
removed. The administrator must back up the software and archive it so that if it ever becomesnecessary to use the software to reconstruct business records created with the software, theorganization can do so.
Patches and Fixes
8/3/2019 Software Installiation & Maintainance
9/50
From the perspective of the software deployment life cycle, a patch or Quick Fix Engineering(QFE) service pack is just a specialized case of another version, and is handled in this lifecycle
as if it were an upgrade of another version.
Throughout this lifecycle, targeting is one of the administrators' key tasks. Administrators have
to manage who has the software during the test cycles on through normal deployment, theintroduction of patches and upgrades, and ensure that when software is no longer needed, it isremoved and archived.
Software Installation and Maintenance was designed to provide the administrator with a
powerful, policy-based mechanism to target software to the users who need it.
Installation Phase
The installation phase represents the steady state of the software on the computer. Administrators
want the software installed correctly on the users' computers. To manage this steady state,
software is:
y Installed. This includes copying the necessary files, initial configuration of the registry,and the creation of the desktop and Start menu shortcuts that allow users to find and usethe software.
y Modified. This involves adding or removing features after the initial installation. Forexample, after the initial installation of word processing software, a user could decide to
install the spell-check feature. Note that this differs from configuration, where usersspecify how they want the software to appear, for example, which toolbars will be
displayed.y Repaired. This involves keeping the software in a working state without regard to what
happens. For example, if a user deletes the executable file for their spreadsheet, and thenchooses the spreadsheet from the Start menu, the executable file would be reinstalled
automatically, thereby repairing the software.y Removed. This involves completely and safely removing the software from the computer
when it is no longer needed, including the removal of all the files, registry entries, andshortcuts.
Software Installation and Maintenance allows an administrator to manage the installation phaseusing Windows Installer and Group Policy.
For additional information on Windows Installer, refer to Appendix A: Creating and
Customizing Windows Installer Packages.
Top of page
Software Installation and Maintenance Architecture
Overall Architecture
8/3/2019 Software Installiation & Maintainance
10/50
This section provides information on the Software Installation and Maintenance architecture. Itdiscusses the architecture in terms of the software deployment phases that were introduced in the
preceding section.
Windows 2000 Software Installation and Maintenance requires Windows 2000 Server, Active
Directory, Group Policy, and Windows 2000 Professional. For specific details on the architectureof Group Policy and the Group Policy Object, refer to the Group Policy white paper.
Windows 2000 Server Components
Table 2, below, describes the server components of Software Installation and Maintenance.
Table 2 Software Installation and Maintenance server components
Component Overall FunctionSoftware Installation and
Maintenance Function
Active
Directory
A hierarchical collection of objects
including domains, sites, OrganizationalUnits (OUs), users, computers andprinters that allow an organization to
manage these resources.
Provides the scope of management
mechanism to locate people andcomputers, and stores SoftwareInstallation and Maintenance
information through Group Policy.
Group Policy
Allows an administrator to centrallymanage users and computers within
Active Directory. Administrators canspecify policy options for registry-based
settings, scripts, software installation,Internet Explorer maintenance, folder
redirection, remote installation services,
and security settings.
Administrators deploy applicationswithin a Group Policy Object (GPO)
that is associated with an ActiveDirectory container such as a site,
domain, or OU. To deployapplications, administrators use the
Software Installation and Maintenance
extension of the Group Policy snap-in.
Microsoft
Management
Console
A common management infrastructure
for hosting administrative andmanagement tools.
Hosts the Group Policy and SoftwareInstallation and Maintenance snap-ins.
The Preparation Phase
Typically, administrators will not perform the preparation phase on servers. Rather,
administrators or developers create packages or repackage software for Software Installation andMaintenance on a computer running Windows 2000 Professional.
The Distribution Phase
Administrators create a software distribution point on Windows 2000 servers, and ensure that thesoftware that they want to deploy is available on that software distribution point.
8/3/2019 Software Installiation & Maintainance
11/50
Figure 2: An administrator's view of the distribution phase
To set up the software distribution point, administrators do the following:
y Create the necessary network folders.y Share the network folders for users to access.y Copy the software to the network shares.y Grant users read access to the network shares
Note: Most software comes with an administrative setup that prepares the software forinstallation from a software distribution point. The administrative setup expands any compressed
files, allows for entry of a software key, and any other preparation. For example, to installMicrosoft Office 2000 to a software distribution point, run setup with the /a parameter.
Assigning software to computers works best if the software distribution point is a Windows 2000server, and is in the same Active Directory forest as the targeted computer. This has to do with
issues related to authentication of the computer (machine account object). For more informationon assigning software to the computer, see the section "The Targeting Phase," below.
The Targeting Phase
Administrators use Group Policy to set the scope of management for software installation; this
determines which users will get the software. Administrators use the Software Installation snap-in extension of Group Policy to deploy software to users or computers managed by a GroupPolicy Object (GPO) associated with a site, domain, or OU. To do this, administrators start the
Group Policy snap-in focused on a GPO they want to manage, and then set Software
8/3/2019 Software Installiation & Maintainance
12/50
installation options (accessed under the Software Settings node) under either the ComputerConfiguration or the User Configuration node of the Group Policy snap-in.
The following example shows a Group Policy MMC console focused on a GPO called HQ
Policy. Administrators use the Software installation node underSoftware Settings to set
options for software deployment for either the Computer Configuration or theU
serConfiguration nodes.
Windows 2000 Software Installation and Maintenance also allows administrators to targetsoftware as either assigned or published.
Administrators assign software when users must have the software to perform their jobs. Forexample, if everyone requires e-mail, administrators can assign an e-mail program.
Best Practice Assign software when you want it to be resilient, that is, no matter what the user
does, the software will always either be installed or available to be installed.
If several people use a computer, and everyone who uses the computer uses a particularapplication, then that application is a candidate for assignment to the computer
Administrators can publish software that users may find useful to perform their job. For example,administrators could choose to publish project management software, allowing users to decide
whether to install the project management application. Software can be published only to users,not to computers.
Given that software can be either assigned or published, and targeted to users or computers, the
administrators have to use a workable combination.
Table 3, below, contrasts publish and assign.
Table 3 Publish and Assign compared
Scenario Publish to Users Assign to UsersAssign to
Computers
After the
administrator deploys
the software, it is
available for
installation after:
The next logon. (If anapplication is deployed in a
GPO that is already appliedto the user from a previous
logon, that application is
available for installation inthat logon session.)
The next logon.The next time thecomputer starts
(reboot).
Typically, users install
the software from:The Add/Remove Programsin Control Panel.
Start menu shortcut.Desktop shortcut.
Add/RemovePrograms in Control
Panel.
The software isalready installed.
8/3/2019 Software Installiation & Maintainance
13/50
If the software is not
installed and the user
opens a file associated
with the software, will
the application install?
Yes. Yes.The software is
already installed.
Can the users remove
the software using the
Add/Remove
Programs in Control
Panel?
Yes. Users can choose toreinstall the software from
Add/Remove Programs inControl Panel.
Yes. The softwarewill be available
again immediatelyfor installation from
the desktop.
No. Only the localadministrator canremove the software.
A user can run arepair on the
software.
Supported installation
file types:
Windows Installer packages
(.msi files), and ZAP files.
Windows Installerpackages (.msi
files)
Windows Installer
packages (.msi files)
The actual steps that an administrator performs to either assign or publish software are
substantially similar. The administrator does both from within the Software Installation snap-in.For information on these tasks, see the Windows 2000 Server online Help file for the SoftwareInstallation snap-in, and the "Step-by-Step Guide to Software Installation and Maintenance"
http://www.microsoft.com/technet/prodtechnol/windows2000serv/howto/instmain.mspx, both ofwhich are available from the Windows 2000 Server Web site.
Administrators assign or publish software by using both the Group Policy and the Software
Installation snap-in. Typically the tasks involved include some or all of the following steps:
1. Open Active Directory Users and Computers snap-in and navigate to Active Directorycontainer (domain or organizational unit) that contains the users or computers for which
you want to manage software.
For example, to manage software for an OU called Accounts in a domain called
reskit.com, you would double-clickActive Directory Users and Computers, double-clickreskit.com, and then right-clickAccounts OU.
2. Open the Group Policy snap-in to create a new (or edit an existing) Group Policy Object(GPO).
Using the example in step 1, to open the Group Policy snap-in, right-click the Accounts
OU, select Properties from the context menu, and then in the Accounts Properties
dialog box, click the Group Policy tab. Then in the Accounts Property page, click theGroup Policy tab, select New and type a name to create a new GPO, or select a GPOform the Group Policy Object Links list box, and clickEdit. This opens the Group
Policy snap-in.
3. In the Group Policy snap-in, select either the User Configuration or the ComputerConfiguration node, double-clickSoftware Settings, and then right-clickSoftware
Installation. This opens the Software Installation snap-in.
8/3/2019 Software Installiation & Maintainance
14/50
For example, to manage software for users, in the Group Policy snap-in, underUserConfiguration, double-clickSoftware Settings, right-clickSoftware installation, and
then select New from the context menu.
4. Select Windows Installer package (.msi file) that you want to deploy from the softwaredistribution point.5. Configure the software for management (associate any transforms and create any upgraderelationships).
6. Assign or publish the software.The Software Installation snap-in generates an application advertisement script (.aas file) andstores this script in the appropriate locations in Active Directory and the Group Policy Object.
For more information on how Group Policy Objects are managed and stored within ActiveDirectory and the Sysvol folder, see the white paper, "Introduction to Windows 2000 Group
Policy" http://www.microsoft.com/windowsserver2003/techinfo/overview/gpintro.mspx.
Windows 2000 Professional Components
Installation Phase
The Installation phase occurs on Windows 2000 Professional desktops. Table 4, below, describes
the client components of Software Installation.
Table 4 Client components of Software Installation
Component Overall FunctionSoftware Installation and
Maintenance Function
Computer startupLoads the operating system, the shell, and
other programs.
Applies computer grouppolicy. Calls the ApplicationManagement extension if
there is computer-assignedsoftware.
Winlogon Allows users to log on to their computers
Applies user group policy.
Calls the ApplicationManagement extension if
there is user-assignedsoftware.
Software Installation
client-side extension
(appmgmts.dll)
Client-side extension of Software
Installation and Maintenance. Client-sideextensions are dynamic link libraries
(DLLs) that are responsible forimplementing Group Policy at the client
computers.
Communicates with ActiveDirectory, the Group Policy
object, and Software Installerto assign or publish software.
Windows InstallerAn operating system service for softwareinstallation.
Advertises, installs, repairs,and removes software.
8/3/2019 Software Installiation & Maintainance
15/50
Add/Remove
Programs in Control
Panel
Used to manage software on the local
computer.
Lists published and assigned
software so that users caninstall, modify, and remove
software from theircomputers.
Published Software
When administrators publish software for a user, the published software does notappear to be
installed on the user's computer. This means there is no information about the software on thecomputer, either in the registry, shortcuts on the desktop, or the Start menu.
The user can install the published software from Add/Remove Programs in the Control Panel.
When users open Add/Remove Programs in the Control Panel and select Add New Programs,they see a list of all of the software that is published and assigned to them. Users will see only
the list of software that the administrator has determined they require for their jobs. If there is a
large amount of software, then the user can sort the software based on administrator-definedsoftware categories.
Figure 3: Publishing software for a user
When users select the software they want to install from the list of published software in the Add
Programs pane, Add/Remove Programs gets the information required to install the software fromActive Directory and uses the information to get Windows Installer package for the software.
The Windows Installer then installs the software based on the information contained in thepackage.
8/3/2019 Software Installiation & Maintainance
16/50
After users install published software, it behaves like assigned software until the users removethe software using Add/Remove Programs, or the administrator removes the software using the
Software Installation snap-in.
User-Assigned Software
User-assigned software appears to be installed on users' computers; in other words, there isinformation about the software on users' computers. The Software Installation extension
(appmgmt.dll) to Winlogon advertises the software in the computer's registry and by usingshortcuts on the desktop or the Start menu.
Figure 4: Assigning software to users
To the user, it appears as if the software is already installed. An entry for the software appears on
the Start menu. Users typically install user-assigned software by selecting the software from theStart menu.
Typical Installation of User-Assigned Applications
When a user selects the software from the Start menu, Windows Installer uses the shortcut
information to get the software's Windows Installer package. The Windows Installer then installs
the software based the information contained in the package.
Assigned software is resilient. If a user removes assigned software using Add/Remove Programsin the Control Panel, then installation information that advertises the software in the registry and
applies the shortcuts to the Start menu and desktop is immediately reapplied. The user canreinstall the software the next time they select it.
Computer-Assigned Software
8/3/2019 Software Installiation & Maintainance
17/50
The preceding description illustrates what happens when software is assigned to a user. Anadministrator can also assign software to a computer. In this case the software is installed for all
the users who use the computer the next time that the computer reboots. This means the nexttime that the Software Installation portion of Group Policy for the computer is applied. While
Group Policy is applied at various times, Software Installation policy can only be applied when it
is safe to do so.
When the computer restarts (boots) the Software Installation client-side extension provides the
information about the software to install from Active Directory to Windows Installer, andWindows Installer then installs the software.
With assigned software, whether it is assigned to the computer or the user, the administrator
knows that users can always use or install the software.
Document Invocation: Auto-Install
Regardless of whether software is assigned or published, users can trigger the softwareinstallation process by invoking a document associated with the software.
Users might receive a document as an attachment to an e-mail message. The users may neverhave installed the software associated with the document on their computers, but the software is
either published or assigned for them. Currently, if users double-click on an attachment to openor invoke it, and there is no software associated with the application on their computer, they get
the Open with dialog box, which lists all the software on their computer. They have to knowwhich software to select to successfully open the file.
Figure 5: Installing an assigned or published application by document invocation
8/3/2019 Software Installiation & Maintainance
18/50
With Software Installation and Maintenance, if a user double-clicks on the attachment to open it,and there is information for the assigned software on the user's computer, then Windows Installer
installs the software and opens the document. If there is no software for that document typeinstalled on the computer, and no assigned software information on the computer, then Windows
2000 Professional looks to Active Directory to see if there is published software associated with
the attachment.
When the administrator publishes software using the Software Installation snap-in, information
about the published software is stored in Active Directory. If there is published software inActive Directory for the user, Windows Installer uses that information to install the software for
the user, and then opens the document for them.
Assigned Software: Summary
To summarize, administrators can assign the software that users require to perform their jobs.
They can assign software to either users or computers.
User-assigned software is:
y Advertised on the local computer when a user logs on to Windows 2000 Professional.y Installed the first time a user starts the software (from the Start menu, or by document
invocation), or a user may choose to install it from Add/Remove Programs in the ControlPanel.
y Resilientif a user removes assigned software, it is advertised again and available forinstallation. The software is always available for users.
Computer-assigned software is:
y Installed when the computer starts.y Can be removed by the local computer administrator from the Add/Remove Programs in
the Control Panel.
Published Software: Summary
Administrators can publish software that may be useful to users. Published software is:
y Not present on the computer. There is no information about the software on the user'scomputer before it is actually installed; instead, the information about the software is
available from Active Directory.y Installed when a user selects the software from Add/Remove Programs in the Control
Panel, or by document invocation.
y Not resilientusers can remove published software by using the Add/Remove Programsin the Control Panel. The shortcuts for the software and the registry information will not
be automatically reapplied on their computer.
Software Life Cycle: Pilots
8/3/2019 Software Installiation & Maintainance
19/50
Regardless of whether an administrator wants to assign or publish software, it is likely that theywill want to set up a software test phase or a pilot. During this phase, administrators can set up a
small group of users that evaluates the software before they deploy the application to the rest oftheir organization.
Administrators can manage software evaluation in the following ways:
y Evaluate the software outside of the corporate managed environment, for example, in alaboratory or test network environment.
y Create a Group Policy Object (GPO) to manage the evaluation, and assign or publish thesoftware to users who are managed by that Group Policy Object.
y Edit the security descriptors or Discretionary Access Control Lists (DACLs) on anexisting GPO or on the assigned or published package to control who can install thepackage for evaluation.
y Manage the state of the software by changing whether the software is assigned orpublished, visible or hidden, and whether or not auto-install is set. These parameters can
be managed in the property pages of the Software Installation snap-in for each package.
Best Practice A simple pilot can be managed by publishing the new version of the software, but
not setting the software to Auto-Install. This way, users in the pilot can install the new versionfor the pilot from the Add/Remove Programs in the Control Panel.
Software Life Cycle: Upgrades
An essential part of the software life cycle phase involves upgrading software. Several events in
the life cycle of the software can trigger an upgrade. For example:
yThe original developer of the software may release a new version with new and improvedfeatures.
y The organization may choose to use a different vendor's application.Administrators must be able to manage the software upgrade process. Regardless of whether the
original software was assigned or published, the upgrade portion of the application life cycle issimilar.
Two types of upgrades exist:
y A mandatory upgrade happens immediately. This means that everyone who has installedthe existing version of the software will be upgraded to the new version. In the case ofalready installed user-assigned or published software, this happens the next time the userlogs on. In the case of computer-assigned software, this happens the next time the
computer restarts. After the administrator creates the upgrade, users who have neverinstalled the existing version of the software can only install the new version (the
upgrade).y A non-mandatory upgrade does not happen immediately. This means that everyone who
has installed the software can continue to use the existing version. Users who want the
8/3/2019 Software Installiation & Maintainance
20/50
new software immediately can install it from Add/Remove Programs in the ControlPanel. Users who never installed the existing software can install either the existing or the
new version. At some point, the administrator may decide that the non-mandatoryupgrade should become mandatory. From that point on, the new version of the software
will behave like a mandatory upgrade.
Best Practice Administrators may want to offer the upgrade as non-mandatory first, giving usersan opportunity to choose when the upgrade happens. Later, the upgrade can be made mandatory.
Windows Installer supports the concept of a declared upgrade relationship, where one package
has information about which other packages it can upgrade. This requires natively authored(rather than repackaged) Windows Installer packages. The Software Installation snap-in can use
this declared upgrade relationship in the package to assist an administrator in managingupgrades.
The Software Installation snap-in detects the upgrade relationship. It automatically establishes an
upgrade between the existing or base software package and the new or upgrading package whenthe administrator adds the upgrading package to the Group Policy Object where the base packageis managed.
Initially, most software being managed with the Software Installation snap-in will be repackaged.
This will impact upgrades in the following ways:
y A repackaged Windows Installer package will not have information about which softwareit can upgrade. Therefore, administrators will have to manually create upgrade
relationships in the Software Installation snap-in.y Because the new software packagewhether natively authored or repackageddoes not
have information about how the existing repackaged software was installed, it will notalways be able to cleanly migrate2 from the existing software to the new version. The
administrator will have to make some remove-and-replace type upgrades; that is, theupgrade will remove the existing software, and then replace it with the new software.
y During an upgrade, the removal of repackaged software may leave components on thedesktop, even if the component is not shared or needed. This is due to the restrictions that
are inherent in any repackaging process.
Software Life Cycle: Software Removal
At some point, users will no longer require software, and administrators will decide to remove it.
The following choices may affect the removal of software:
y Administrators may decide that the existing software should not be supported and thattechnical support should be provided only for the latest version of the software. You
could remove the software (from management) without forcing the (physical) removal ofthe software from the computers of users who are still using the software. This means that
these users could continue to use the software until they remove it themselves. In this
8/3/2019 Software Installiation & Maintainance
21/50
scenario, after the removal, no one would be able to install the older version of thesoftware.
y Administrators may decide that the software should no longer be used. That is, users willno longer be able to install the software, nor run the software. In this scenario, you want
to enforce the removal of the software from user's computers.
Best Practice When administrators remove software, they should allow sufficient time for usersto either log on or restart their computer so that the software is removed before they remove the
Group Policy Object that contained the software.
Top of page
Common Software Installation and Maintenance Scenarios
This section highlights the basic user scenarios that Windows 2000 Software Installation and
Maintenance supports. Because each organization has its own unique business requirements,
administrators will have to determine the best way to implement Software Installation andMaintenance within their organization.
Supporting Knowledge Workers
One User: One Computer Stationary Worker
In many organizations, each user has their own computer and they do not work on other
computers. Typically, this computer is a desktop computer, connected to the network with aconsistent, high-speed connection.
Administrators may want to make these users their base, and define a standard operatingenvironment (SOE) that will include standards on how the operating system will be installed andconfigured, how Group Policy will be used to further configure and manage the environment,
and which software is needed.
If the computers have the necessary hardware3 to take advantage of the Remote OS Installationfeature of Windows 2000, the administrator can include the necessary application software with
the operating system image, and then the software is copied onto the computer with the operatingsystem. For more information on this topic, see the section "Using IntelliMirror and Remote OS
Installation Together," later in this paper.
If the computers do not have the necessary hardware to take advantage of the Remote OSInstallation, then the administrator can use the Software Installation snap-in to assign thesoftware to the computers. They do this by editing the GPO that manages the computers and
using the Software Installation snap-in under the Computer Configuration node of the GroupPolicy namespace to assign the software to the computers.
In this scenario, assigning the software to the computer may be the best choice, as the software
will be installed during startup of the computer.
8/3/2019 Software Installiation & Maintainance
22/50
Administrators could also choose to transform Windows Installer package for the software tosupport running the software from a network share, thereby reducing the amount of software
copied across the network. Note that the software (like Microsoft Office 2000) has to be writtenin a manner that specifically supports being run from a network environment, and the
administrator should take into account the effect that this choice might have on network traffic.
Best Practice Administrators can use the Microsoft Office 2000 Custom Installation Wizard tocreate a transform that allows users to run Microsoft Office 2000 from a network share, with a
minimal computer footprint for the software.
Mobile Workers: The Traveling Professional
In many organizations, users' jobs require that they travel extensively. A key point about mobile
workers is that while they log on to the same computer, their computer sometimes connects by ahigh-speed line, and sometimes by a low speed, or dial-up, line.
Best Practice By default, Software Installation and Maintenance policy is not applied over aslow link. Thus, users who connect to their organizations network by slow links may not seechanges to software policy. This can be changed by Group Policy. For more information on slow
links, see the Software Installation and Maintenance section of Appendix F.
Administrators may want to create a variation on their standard operating environment to supportmobile users. Administrators may find it best to manage these computers in their own GPO, and
then use the Software Installation snap-in to publish software to these users by focusing the snap-in on the User Configuration node of the Group Policy snap-in.
Administrators need to customize or transform any Windows Installer packages for the software
that these users need to install the key features of the software locally (on the hard drive of theuser's computer).
As well, administrators might want to allow mobile workers to keep some software available onlocal media while they are traveling. For example, if a traveling professional makes a lot of
presentations, bids, and quotes, it may make sense to allow them to have Microsoft Office 2000on CD, so that if they ever need the source files to install or repair a feature while they are not
connected to the network they can use the source media.
Administrators can do this by using the Microsoft Office Custom Installation Wizard to set theinstallation source of the Microsoft Office Windows Installer package to first look to the network
software distribution point, and then look to local media.
Note: A Group Policy called Disable media source for any install exists in the Group Policy
snap-in under the User Configuration\Administrative Templates\WindowsComponents\Windows Installer node. Verify that this policy is disabled if you want users to be
able to install from local media.
Shared Computers: The Factory or Business Floor
8/3/2019 Software Installiation & Maintainance
23/50
8/3/2019 Software Installiation & Maintainance
24/50
8/3/2019 Software Installiation & Maintainance
25/50
The second parameter allows the administrator to remove a version of the software that isalready installed, if they are going to install a Software Installation and Maintenance-managed
version.
In this scenario, if a user had already installed an unmanaged version of Microsoft Word and
now the Software Installation and Maintenance feature is going to install a managed version ofMicrosoft Word, then the unmanaged version would be removed and the managed version wouldbe installed.
Staging Computers: Bringing New PCs into the Organization
A lot of time is spent preparing computers when the organization first acquires them. Withoutregard to which Original Equipment Manufacturer (OEM) the organization purchases computers
from, and how the OEM prepares the computers, many organizations take new computers,format the hard drives, and then configure the computer according to their standard
configuration.
To reduce the costs of staging computers, administrators can use the Windows 2000 Remote OSInstallation feature to stage and standardize their computers, and can install the organization's
key software at the same time.
As an example, consider an organization that wants to bring in new computers and customizeboth Windows 2000 and Office 2000. To do this, administrators should do the following:
1. Set up and configure Remote OS Installation.2. Use the Group Policy snap-in to create the appropriate Group Policy Object to manage
the computers in the organization.
3.
Create a software distribution point for Office 2000.4. Customize (transform) Office 2000 the way they want it configured.5. Use the Software Installation snap-in to assign Office 2000 to the computers in the
appropriate GPO. If you assign the software to the user, the computer-assigned versioncan be uninstalled, and the user version advertised and then installed on first usage.
6. Install Windows 2000 on a computer, and configure the operating system as desired. Thetarget computer does not have to have the same hardware, but it must use the same
Hardware Abstraction Layer (HAL) as the computers that will install from the image.(The use ofimage in this context refers to a copy of all the operating system files).
7. Add the computer to the Active Directory container where it will live when it isdeployed. This container has the GPO with Office 2000 assigned to the computer
associated with it.
Note: Care must be taken to configure this computer with software from the GPO wherethe computer will live when it is deployed. Otherwise the software may be removed and
reinstalled if a different policy is applied to the computer.
8. Start the computer and Software Installation and Maintenance will install Office 2000(software assigned to the computer installs when the computer starts).
8/3/2019 Software Installiation & Maintainance
26/50
After Office 2000 has been installed, the administrator takes the computer with Windows 2000and Office 2000 on it and uses the RIPrep tool of Remote OS Installation to build a Remote OS
Installation image, and then puts this image on the Remote OS Installation server.
After the Remote OS Installation image is available, a user getting a new computer that supports
Remote OS Installation only has to connect the peripherals (keyboard, mouse, monitor), connectto the network (plug a cable between the network card and the hub), and turn on the computer.The computer will find the Remote OS Installation server and download the Windows 2000
operating system and the software. When the computer restarts after remotely installingWindows 2000, Software Installation and Maintenance detects that the Office 2000 is already on
the computer, and then will only update the advertisement information. This update of theadvertisement information only takes a few seconds.
Note: When users log on to the computer, and select the first Office 2000 application, they will
see Windows Installer start. Why is this? Office 2000 is already installed, but Office 2000properly separates installation from user configuration. The Windows Installer will start each
time a new user starts Office 2000 to finish a small amount of user configuration. This willhappen with Office 2000 regardless of whether Office 2000 is assigned to the user, assigned to
the computer, published, or installed with Remote OS Installation.
The key point is that, using Remote OS Installation and Software Installation and Maintenance
together, administrators can efficiently deploy both the operating system and other software, andbring the software into a state where it can be managed by Software Installation and
Maintenance for future updates or removal.
Management Transitions
There are several scenarios where administrators will have to manage the transition of users andcomputers from a non-managed environment to a managed environment. For the purposes of this
paper, a non-managed environmentis any situation where the organization is using any non-Group Policy IntelliMirror-based software management solution. In this context, using Microsoft
Systems Management Server represents a non-managed scenario. A managed scenario is onewhere an organization uses Group Policy and Software Installation and Maintenance to manage
their software.
Consider the scenario where administrators need to roll out Microsoft Office 2000 on a Windows
NT 4.0-based computer. They know that in the future they will deploy Windows 2000 and theywant to be able to manage Microsoft Office 2000 with the IntelliMirror Software Installation and
Maintenance feature. They know that in the future they will move computers with theunmanaged Office 2000 into the managed environment, and they want to ensure that they do not
have to remove and then reinstall Office 2000.
In essence, this is similar to the Staging a New Computer case. Administrators want to installOffice 2000 in a manner that allows it to be managed in the future. The key is to use a Windows
Installer package and transform for Office 2000 that will be exactly the same as WindowsInstaller package and transform combination administrators will use when it is being managed.
8/3/2019 Software Installiation & Maintainance
27/50
Thus, if administrators can create the software distribution points now for use in the future, theycan successfully transition the software.
To create software distribution points
1.
Create the software distribution points that they will use, and install the software withWindows Installer packages and transforms.2. Install the software using Windows Installer with the following parameters.3. C:\>msiexec /I \\servername\share\software.msi TRANSFORMS =4. \\servername\share\software.mst /qb
Wheresoftware.msi is Windows Installer package to be installed, andsoftware.mstis
the transform to be applied at deployment time.
5. When administrators have their Active Directory and Group Policy infrastructure inplace, they can assign the software in the appropriate GPO, using the same software
distribution point, Windows Installer package, and transform.
6. Move the computer into an Active Directory container with the GPO, or link the GPOwith the Active Directory container holding the computer.
Administrators should use the same Windows Installer package, the same transform, and thesame software distribution point. In this case, the software will not be uninstalled and theninstalled again, but rather, the Application Management extension will detect that the software is
the same, and it will only do what is necessary to continue to manage the software in the future.
Customizing Software
During the preparation phase, administrators typically customize software in two ways. First,
they determine which features of the software add value in their organizations. Second, they addadditional in-house templates, documents, and files with the software.
Best Practice In the past administrators repackaged software to customize it for their
organization. Administrators should not repackage a Windows Installer package, instead, it isrecommended that they create a transform and use that to customize the package.
Customizing Features: Native Windows Installer Packages
The best way to customize the installation of features for Software Installation and Maintenance
is to leverage Windows Installer transform support. For example, Microsoft Office 2000
provides the Custom Installation Wizard, which allows administrators to tightly manage theconfiguration of Microsoft Office 2000.
Administrators should design their customizations so that the key features that users need (for
example, in the case of Office 2000, Word may be a key feature), install during the firstinstallation. Less used features, such as Redline support, or Document Translators, could install
on first usage. Other features, such a Clip Art, may not be installed at all.
8/3/2019 Software Installiation & Maintainance
28/50
Administrators should also consider transforming the software in such a way that users caninstall features when they need them from Add/Remove Programs in the Control Panel.
Best Practice Management of the software distribution points can be complex. Administrators
will find it easier if they store transforms at the same software distribution point (in the same
share and folder) as the Windows Installer package that they customize.
Customizing Features: Repackaged Windows Installer Packages
While it is technically possible to transform repackaged software, administrators may find it justas easy to customize the repackaged software between the before and after snap-shots. As long as
you are taking the time to repackage the software, make it work the way you need it at the sametime.
Distributing Additional Files: Distributing Frequently Changing Files
Many organizations need to distribute additional files with software. For example, theorganization may want to distribute a sales quote template with Microsoft Word, and acustomized bidding spreadsheet with Microsoft Excel. These types of files could be bundled with
the executable and other source files for the software when the administrator creates the package.Or, they could be included as a transform.
However, these files are often more volatile than the software files. Therefore, administratorsmay want to package these files in their own Windows Installer package. This package should
have its own product code, and should be upgraded on a different schedule than that of theapplication. The package with the additional files will install faster than reinstalling the entire
application.
Best Practice Create these additional file and template packages using one of the availablenative authoring tools for Windows Installer packages. It is a simple process to build a package
to just distribute files, and the files can be compressed into Windows Installer package.
Managing Existing Software
Managing new software in the future should become easier as most software publishers will
begin to support the Certified for Windows 2000 specification, and will distribute their softwarewith Windows Installer packages and customization support.
In the short-term, the question becomes how to distribute software for which the publisher doesnot provide a Windows Installer package.
There are two ways to address this issue: using .zap files, and repackaging. Table 5 contraststhese methods.
Table 5 ZAP files and repackaging contrasted
.Zap Files Repackaging
8/3/2019 Software Installiation & Maintainance
29/50
Advantages
Easy to create
FastApplication displays in Add/Remove
Programs in the Control Panel
Benefits from Windows Installer
featuresCan be run without user intervention
Can be assigned or publishedUser does not have to be (local)
administrator to installCan automatically repair itself if key
files are damaged or missing
Disadvantages
Runs existing setup, therefore willrequire user intervention
Does not benefit from Windows Installerfeatures
May require user to have (local)administrator privileges to install
Cannot automatically repair itself if keyfiles are damaged or missing
It is time-consuming to build and test
packages
Best PracticeUse the Certified for Windows 2000 guidelines when you develop your in-house
or line-of-business (LOB) applications to ensure that they perform well with Windows 2000 andapplications that use Windows 2000.
Publishing Existing Setups: .Zap Files
Administrators can use Software Installation and Maintenance to publish existing setup
programs. This means that the published software will appear in the Add/Remove Programs inthe Control Panel, and that users will be able to install it from this location.
Because the administrator is publishing the existing setup, the experience for the user installingthe software will be no better than using the existing setup. That is, if the user installing the
software has to be a local administrator on the computer to install the software, then they have tobe a local computer administrator to install the published existing setup. If the existing setup
does not support clean and complete removal of the software, then publishing the existing setupwill not improve the software removal experience.
The main disadvantage of using the existing setup is that it does not support management,
especially management of the software lifecycle including pilots and upgrades. Anotherdisadvantage is that you do not get the features ofWindows Installer, including feature fault-in,
repair, and clean removal when the software is no longer needed. Feature fault-in can be
explained as follows. One of the checks that Windows Installer performs is whether a productfeature or component is installed. If a feature is advertised, it is not installed yet, and an on-demand installation of that feature (or feature fault-in) can occur when a user tries to use that
feature. For example, Office 2000 has many features such as a Spell Checker, Thesaurus, and soon. These can be configured to fault-in when a user tries to use them. Large applications, with
features that may not be required by all users, can be configured so that components that are usedinfrequently will install on-demand rather than by default.
8/3/2019 Software Installiation & Maintainance
30/50
Best Practice One reason to do repackaging versus publishing existing setups is that WindowsInstaller packages can be installed automatically with elevated privileges.
For more information on .zap files, see Appendix D: The ZAP File Format.
Repackaging
A variety of tools are available that will allow administrators to repackage software into aWindows Installer package. The Veritas Software WinInstall LE program ships with Windows
2000 Server, and supports repackaging software as Windows Installer packages.
For additional information on creating Windows Installer packages, see Appendix A: Creatingand Customizing Windows Installer Packages.
Maintaining Software
Patches and QuickF
ix EngineeringF
ixes
From time to time, publishers of software provide patches. Software patches usually fix a singleproblem, and the amount of testing that is done on a patch varies.
After administrators have tested a patch and decided to deploy it, they copy the patched files to
the software distribution point, replacing the older files. The software publisher who distributedthe patch either supply a new Windows Installer package (.msi file), or a Windows Installer
patch (.msp file). If they supply a new Windows Installer package, administrators simply replacethe existing package at the software distribution point with the new package. If they supply a
Windows Installer patch, administrators follow the supplied directions to apply the patch (.msp)
to the existing package.
After the files at the software distribution point have been updated with the patched versions,administrators open the Software Installation snap-in within the Group Policy object where they
are managing the existing software. Then they click on the software that they just patched at thesoftware distribution point, and select Redeploy from the context menu. This causes the patched
files to be copied to the users who have installed the software the next time Group Policy isapplied.
Service Packs
Service packs don't differ significantly from patches. Service packs typically roll up severalpatches, and these patches have been tested. Service packs are usually distributed less often thanpatches, but more often than full upgrades.
If the service pack only updates a small number of files, the recommendation is to distribute andmanage it like a patch. If the service pack updates a large number of files, the recommendation is
to distribute and manage it like an upgrade.
8/3/2019 Software Installiation & Maintainance
31/50
In either case, follow the instructions supplied by the publisher of the patch and test this in a labor with a small number of users before rolling it out to all users and computers that are managed
by a Group Policy Object.
The plan for future Windows 2000 Service Packs is to distribute them in a manner that will allow
them to be managed by the IntelliMirror Software Installation and Maintenance feature.
Upgrades
Upgrades typically involve major changes to the software. That is why they have new versionnumbers; a substantial number of files change for an upgrade.
The publisher of the software supplies a Windows Installer package for the new version, and that
package should define which existing versions of the software the new package can upgrade. Itshould also contain instructions on how to perform the upgrade (which existing files can remain
in place, which existing files should be deleted, and which new files need to be installed).
To begin the upgrade, administrators place the software application files with WindowsInstaller packages and transforms on the software distribution point, and then assign or publish
the new version, using the Software Installation snap-in and then defining an upgraderelationship between the new and existing version. If the application being upgraded is known to
the Windows Installer package of the upgrading application, then the Software Installationsnap-in can automatically detect and create the upgrade relationship.
Administrators have to decide whether an upgrade is mandatory (immediately takes effect for allusers who have the existing version installed) or optional (users can install the new version when
they are ready to do so).
Software Installation and Terminal Server
Table 6 shows the interaction of the IntelliMirror Software Installation and Maintenance featurewith Microsoft Terminal Server.
Table 6 The interaction of the IntelliMirror Software Installation and Maintenance feature
with Microsoft Terminal Server
Terminal Server
Software
InstallationRemote Administration Application Server
User
Assigned
Software installation andmaintenance works in the
same manner that it does onWindows 2000 Professional.
Will not get applied; software will not be installed.
Computer
Assigned
Software Installation and
Maintenance works in thesame manner that it does on
Domain users with roaming user profiles may roam
to an application server. Their application shortcutswill follow them. If the application server has the
8/3/2019 Software Installiation & Maintainance
32/50
Windows 2000 Professional. same application installed, the shortcuts will work.
If the application is not installed, the shortcut willdo nothing.
Published to
Users
Supported for both Windows
Installer packages and .zap
Files.
Will not get applied; software will not be installed.
When installing the software on a Terminal Server Application Server, the administrator should
follow the guidelines and directions that accompany Terminal Server, rather than attempting toassign software to the Terminal Server.
Software Installation and Maintenance and Multiple Language Issues
While Windows 2000 Professional has many locale and language settings, from the perspective
of Software Installation and Maintenance, only the system locale matters. This is because thesystem locale impacts the code pages that are available, and code page availability, more than
any other factor, affects how a multiple language or language-specific application behaves.
Applications or products typically support one language, and the supported language is
expressed in Windows Installer package for the product. This is referred to as the productlanguage in the rest of this section.
To determine whether to install a product of a particular language on Windows 2000
Professional with a particular system locale, Software Installation and Maintenance does thefollowing:
y Checks to see if the Ignore Language parameter was set in the Software Installationsnap-in for the managed package. IfIgnore Language is set, the package is eitheradvertised or installed, regardless of whether the system locale and product language
match.y If the system locale and the product language match, the package is installed (as
appropriate for user assigned, computer assigned, or published).y If the package language has been configured as English or Neutral, then this package will
be applied to the target regardless of the target systems' locale setting. The locale affects
the way programs display dates, times, currency, and numbers. You usually select thelocale that matches your location, such as English (United States) or French (Canada).
Note that the package can also be configured as Exact Match.
The following points should be kept in mind:
y Roaming between computers with different locales may produce unexpected results.y Use caution when deploying applications with different product languages (for example,
an English and German version of the same application) in the same Group Policy Objectif the two applications have the same product code. If the two applications have the same
product code, only one of them will be installed for users or computers. If you need to
8/3/2019 Software Installiation & Maintainance
33/50
make the same application available to users in multiple languages, they must havedifferent product codes.
Software Installation and Maintenance and Backup
Administrators must ensure that they back up any software distribution points they create tomanage the deployment of software, packages, and customizations.
Software Installation and Maintenance relies on Group Policy, and Software Installation and
Maintenance and Group Policy store information in both Active Directory and the Sysvol folderof domain controllers. Therefore, any backup and restore strategy has to take this into account
and backup and restore both in a synchronized fashion.
Top of page
For More Information
For the latest information on Windows 2000 Server, Change and Configuration Management,and IntelliMirror, see the Windows 2000 Server Web site.
Table 7 Additional Resources
For
informatio
n on:
See:
Writingsoftware
that
leveragesGroupPolicy
The Application Specification for Windows 2000
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnw2ksrv/html/w2kserve.asp.
Group
Policy andGroup
PolicyObjects
Windows 2000 Server online Help
http://www.microsoft.com/windows2000/en/server/help/ and the Group PolicyWhite Paper
http://www.microsoft.com/windowsserver2003/techinfo/overview/gpintro.mspx.
Using the
GroupPolicy
snap-in andunderstandi
ng thescope of
management for Group
Policy
The Group Policy Walkthrough at
http://www.microsoft.com/technet/prodtechnol/windows2000serv/howto/grpolwt.mspx.
8/3/2019 Software Installiation & Maintainance
34/50
RemoteInstallation
Windows 2000 Remote Installation Services (RIS) Step-by-Step Guide at
http://www.microsoft.com//technet/prodtechnol/windows2000serv/howto/remoteos.mspx.
The
Windows
Installer
The Windows Installer White Paper
http://www.microsoft.com/technet/prodtechnol/windows2000pro/evaluate/featfunc/
wispro.mspx.The
WinInstallLE
Repackager
The WinInstall LE Repackager Walkthrough athttp://www.microsoft.com/technet/prodtechnol/windows2000serv/howto/winstall.m
spx
Top of page
Appendix A: Creating and Customizing Windows Installer Packages
The technical information on Windows Installer is available in the Microsoft Developer
Network (MSDN) http://msdn.microsoft.com/developer/. Specifically, Windows Installertechnical information, including Windows Installer package schema, the details ofWindows
Installer Application Programming Interface (API), and sample packages and code are availablein the Microsoft Platform Software Development Kit (SDK)
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/sdkintro/sdkintro/devdoc_platform_software_development_kit_start_page.asp.
When to Natively Author Windows Installer Packages
For the best installation experience, organizations should natively author Windows Installer
packages. Natively authored Windows Installer packages support all Windows Installerfunctions, including just-in-time feature installation, feature repair, and installation with elevated
privileges.
To create native Windows Installer packages for their software, organizations must have:
y Access to all the source code, executable files, dynamic link libraries, and other resourcesy An understanding of the application, and the registry entries, shortcuts, and other
information that is needed for the application to run correctly
For example, an organization has in-house software that allows people to arrange their business
travel. The organization has all the files for the software, and the developers understand how thesoftware should be installed on users' computers. In this case, the organization could choose tonatively author a Windows Installer package for the software.
For best results, the creation of the installation package and the software should be done
simultaneously. That is, the creation of the setup should not be an afterthought at the end of thedevelopment cycle, but rather, the installation of the software should be a part of the overall
architecture of the application.
8/3/2019 Software Installiation & Maintainance
35/50
For more details on the development considerations of integrating Windows Installer intosoftware's architecture, see the article titled "Gain Control of Application Setup and Maintenance
with the New Windows Installer" http://www.microsoft.com/msj/0998/windowsinstaller.aspx, inthe September 1998 Microsoft Journal.
Well-functioning software requires more than just a Windows Installer-based installation. Foradditional information on state separation (keeping application data and user data separate), seethe Certified for Windows 2000 information in Appendix C.
For more information on tools for natively authoring Windows Installer packages, see:
http://www.installshield.com
http://www.wisesolutions.com
http://www.microsoft.com.
Earlier in this document, it was suggested that Administrators could use Windows Installer to
distribute files, templates, and other organizational data. Administrators can easily create thesepackages with a native package-authoring tool.
The following flow chart illustrates when to author native packages, repackage, or use Windows
Installer package.
Figure 6: Deciding between native packages, repackaging, or using Windows Installer
package
8/3/2019 Software Installiation & Maintainance
36/50
Repackaging Software
It is not always possible to natively author packages. For example, organizations may havesoftware for which the publisher does not supply a Windows Installer package. Alternatively, the
organization may have older software for which they do not want to create Windows Installer
packages.
Repackaging allows an organization to benefit from Windows Installer. While repackaged
applications are not as granular as natively authored applications (typically they have one largefeature per product), the software can be advertised, repaired, and will install with elevated
privileges.
The VERITAS WinInstall LE ships on the Windows 2000 Server distribution media (in the
\valueadd folder). A walkthrough on how to repackage software with this tool will be availableat: http://www.microsoft.com/technet/prodtechnol/windows2000serv/howto/instmain.mspx.
Information on the full version of this repackager tool is available from: http://www.veritas.com/
Note: A beta version of a 'step-up' utility to convert Microsoft Systems Management Server
Installer packages to Windows Installer packages is now available. For more information on theInstaller Step-up Utility for Microsoft Systems Management Server, see
http://www.microsoft.com/smserver/techinfo/deployment/20/deployosapps/install_stepup.asp.
Administrators who do not want to repackage an application can always publish the software by
creating a .zap file for the application. You can create a .zap file with any file editor such asNotepad. For an example .zap file, see Appendix D.
The .zap file resembles an .ini file. It is a text file that contains sections, and includes parametersand their values.
The following example shows all that is required in a .zap file to publish Microsoft Excel 97.
[Application]FriendlyName = "Microsoft Excel 97"SetupProgram="\\server\share\Excel 97\setup.exe"
Customizing Installations
Windows Installer applications support customization by means of transforms. Typically, the
publisher of the software will supply a mechanism to create transforms. For example, MicrosoftOffice 2000 supplies a Custom Installation Wizard that builds them.
Native authoring tools and repackager tools can be used to create transforms.
Best Practice In the past, administrators often customized the software by repackaging it. Do nottry to repackage applications that use Windows Installer. Rather, use transforms for additional
customization.
8/3/2019 Software Installiation & Maintainance
37/50
Top of page
Appendix B: Software Installation and Maintenance Glossary
Advertisement
The process of making an application that supports Windows Installer appear installed on thedesktop, by installing the shortcuts for the application on the Start menu or desktop, and by
populating the registry with the application information.
Advertisement Script
The output of the Software Installation snap-in, which advertises an application that supports
Windows Installer. The advertisement script is stored in Active Directory.
Assigned
One of the modes of targeting supported by Software Installation and Maintenance.
Administrators can assign the software that users require to perform their jobs. Administratorscan assign software to users and to computers. User-assigned applications are advertised on the
desktop; they appear to be installed on the user's desktop, but they get installed the first time thatthe user starts the application, typically from the Start menu. If a user deletes an assigned
application, it will be re-advertised. Computer-assigned applications are installed the next timethat the computer restarts.
Package
A Windows Installer database (file) that contains the instructions to manage the state of thesoftware on a computer.
Published
One of the modes of targeting supported by Software Installation and Maintenance.
Administrators can publish software to users. Published applications are not advertised on thedesktop; there is no physical appearance of published applications on the user's desktop. Users
install published applications from the Add/Remove Programs in the Control Panel or byactivating a file type associated with an application.
Repackaging
The process of preparing software for distribution by taking a snapshot of a clean computer, theninstalling the software and taking a post-installation snap-shot of the computer. The repackaging
software takes the difference of the two snapshots and creates the necessary installationinstructions to reproduce the installation.
Software Installation snap-in
8/3/2019 Software Installiation & Maintainance
38/50
The Microsoft Management Console (MMC) that an administrator uses to manage software.
Transform
(Verb) The process of modifying or customizing a Windows Installer package.
(Noun) A Windows Installer customized package that, if associated with another Windows
Installer package at deployment time, results in a customized installation.
Windows Installer
The Windows Installer is a Windows operating system-based service that can install, modify,repair, and remove software. The Windows Installer includes the operati