Installer Files in Windows

Before you start

Objectives: learn what are installer files, different types of installer files, and how can we use them.

Prerequisites: you should understand what is Active Directory environment.

Key terms: software, application, msi, installation, package, msiexec, mst, deploy


Installed Package Types

To help us deploy applications more easily Microsoft introduced MSI files or Microsoft Installer files. MSI installer package has an option for repair in case of a corrupt installation and for automatic uninstallation. In addition to MSI files there are other types of installer packages as well. We distinguish installer packages by its extension. MSP installer package serves as patch file for installed applications. MST files are transform files which enables us to provide custom information for our applications. We can also create our own installer files using Microsoft tools. These files are called ZAP files.

Group Policy

Best way to use these installation files is trough Group Policy Objects or GPOs. Using Group Policy we can add an installer package to a software installation policy in a GPO. The software will then be either installed automatically or made available for installation. Software can be either assigned or published, and applies to either computers or users. Inside every GPO we have the ability of adding software packages for particular computers and users. When we create software package we choose to use user heading or computer heading. If we choose the user heading the software installer package will be assigned to the particular user that logs on to the computer. This is useful if we have multiple users working on the same computer and only certain ones need certain applications. When the user logs in, the system will check to see if particular application is installed. If it is not installed it will automatically launch the installation. If it is installed, the system will activate it for that particular account. If the user is not allowed to use that application it will be deactivated for that particular account. When we want our applications available for all users on particular workstation we would create the software package under the computer heading.

Deployment Types

We can control to deploy applications to our Sites, Domains or Organizational Units (OU’s). When deploying software we have an option toassign the software or to publish the software. When we assign the software it will be mandatory for installation. Assigning software installs it automatically. Software can be assigned to either users or computers. When we assign an application to users, a shortcut to the application appears on the user’s Start menu. The application is installed when the user attempts to run it or when a user tries to open a file associated with an assigned application. When we assign an application to computers, the application is installed the next time the computer boots. Users cannot use ‘Add/Remove Programs’ to remove computer assigned software. Users can uninstall user-assigned applications, but they still exits on the Start menu and reinstall the next time they click them. This ensures that we deploy updates or certain software packages toward users. When we publish the software users can see a list of available applications which they can choose to install. Publishing software makes it available for installation by adding it to ‘Add/Remove Programs’. Users must start the installation process. Applications can not be published to computers.

Command Line

There are command line utilities that we can use to publish our software. The first utility that we can use is Msiexec. For example, let’s say that we want to install application named NezCU.msi. The syntax for that would be: msiexec /i C:NezCU.msi. The /i switch means installation, and after that we provide the path to our application. To apply a customization to our application, a.mst to a .msi during deployment, we can append TRANSFORMS= followed by a list of .mst files to the Msiexec command. For example: msiexec /i C:NezCU.msi TRANSFORMS=C:TransCU.mst.These two combined ends up being the installed application. The same is when we use our patch files. An .msp file can be applied to an .msi, but the .msi must be redeployed after the patch is applied.

Remember

An installer package is a set of files required to install an application. File with MSI extension is Microsoft Installer package. MSP files are patch files for installed applications. MST files are transform files used to provide custom information to applications. ZAP file are custom installer files. Using Group Policy we can deploy applications to remote computers. Software can be assigned to particular computer, or to particular users. We can control to deploy applications to our Sites, Domains or Organizational Units (OU’s). When we assign the software it will be mandatory for installation. When we publish the software users can see a list of available applications which they can choose to install. Command line tool which we can use to install applications is MSIEXEC.exe

Commands that are mentioned in this article
  • msiexec /i C:NezCU.msi – install application called NezCU.msi, located in C: folder.
  • msiexec /i C:NezCU.msi TRANSFORMS=C:TransCU.mst – customize NetCU.msi application using TransCU.mst file, during deployment.