Using Windows Installer in Windows 2000 Beta 3

Windows Installer brings application management and deployment into Microsoft Corp.’s operating system. Figure out how to use it, and you will discover one of the most important improvements to the platform.

Hands On: Windows 2000 Beta 3

Editor’s note: This is the third of a series that is looking at installing and using Windows 2000 in production-like use. Neither Microsoft nor ENT encourages users to deploy Windows 2000 Beta 3 into production networks: These articles are intended to help readers understand the impact a Windows 2000 deployment could have within their own infrastructure.

Windows 2000’s Windows Installer brings application management and deployment into Microsoft Corp.’s operating system. Figure out how to use it, and you will discover one of the most important improvements to the platform.

Windows Installer is a service that provides an API that enables the complete management of application installations. The API helps the Windows Installer service manage all file paths on behalf of a given application. At run time, a Windows Installer application can query for a path to a given application component, usually stored on a network shared drive. When a component is needed that has not been installed, the Windows Installer service finds it and installs it. This frees up valuable resources and should reduce service calls.

New functionality includes the ability to manage install/uninstall at the component level for the entire system, to advertise applications without loading software on a system, to automatically repair corrupted key product files, to provide rollback functionality in the case of a cancelled installation and to repair an improperly installed application.

In the past a variety of tools and functions were needed for application management and deployment. There was nothing in Windows technology to make application installation easy.

The Windows Installer service, a component to be included in Windows 2000, will also be provided as a service pack for the Windows 95, Windows 98, and Windows NT 4.0 operating systems.

The service is not without a catch: Applications must be Windows Installer-compliant to be able to be managed by the service. Compliant applications offer roaming user support, on-demand install and run time resource resiliency. Unfortunately, the only known natively authored Windows Installer-compliant application today is Office 2000.

We ran into a second problem with Windows Installer when we tried to test it ourselves. There is nothing obvious about installers or software publishing in the online help files. We had to use Microsoft’s Web-based library of white papers at the Beta 3 Web site (www.microsoft.com/windows/server/Beta/) to find the answers in a document titled "Software Installation and Maintenance Walkthrough."

Opening the Microsoft Management Console (MMC) titled "Active Directory Users and Computers" from the Administrators Tools menu, we modified the default domain group policy within the Active Directory. In this group policy we were able to create a package definition that made Microsoft Office 2000 available to all users within their Add/Remove Programs control panel on Windows 2000 Professional/NT 4.0 workstations and Windows 95/98 desktops -- provided the Active Directory client had been installed.

We wanted to go a bit further with the Windows 2000 package. We wanted to make it a mandatory installation, and we wanted to tailor the package to install each application when the user first launches it. For example, if a user never launches PowerPoint 2000, it never installs. But as soon as the user launches PowerPoint, it installs then runs. To do this we needed to modify the application installer configuration properties.

Windows Installer offers a choice of Published or Assigned installations. A Published application is optional and appears in the Add/Remove Programs control panel, where a user may go to install it. An Assigned application appears on a user’s desktop automatically.

Group Policies in Windows 2000 can be assigned to users or computers, providing a flexibility to assign application installations to specific users for security purposes or to specific workstations for administrative purposes. A modification of the policy removes outdated applications.

Next we wanted to package and install one of our own applications, not a Microsoft canned tool. We have a few tools and toys that we have built along the way, and we used Wise Installation Manager from Wise Solutions (www.wisesolutions.com) in the past to build installation scripts for these tools. Using Wise for Windows Installer, we converted our "Tools and Toys" installation into Windows Installer packages, created group policies for them and made them available for installation through the Add/Remove Programs control panel.

Some thought must be given to deciding where to place the files needed for installing applications. If the files are placed on a single shared network drive, then the files might have to traverse a slow WAN link during the installation. Better to create multiple policies within a large network than to have a single distribution point. Using IntelliMirror, another feature of Windows 2000, distribution points can be synchronized with a master copy.

In general, most of the key improvements found in Windows 2000 benefit administrators more than individual users. The integration of Windows Installer with Active Directory is an example of this, but the addition offers one of the most compelling reasons for upgrading to Windows 2000.