Software Installiation & Maintainance

download Software Installiation & Maintainance

of 50

Transcript of Software Installiation & Maintainance

  • 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