To troubleshoot installation failures, you need to understand the requirements of a successful installation. These requirements include—among other
factors—administrator privileges, compatibility with Windows 7, availability of
installation code and data, and the status of application dependencies. You also need to
understand how administrative features such as Software Restriction Policies (SRP) and AppLocker can block an installation even
when these requirements are met.
1. Verifying Software Installation Requirements
You can install new software on clients running Windows 7 in two general ways. First, you
can push applications to clients by means of a software deployment technology such as Group
Policy, Microsoft System Center Configuration Manager, or a third-party solution. The second
option is to install a program manually.
Although some of the requirements for successful software installation are particular to
the way in which the software is deployed, most requirements apply to all software installation
methods. To begin troubleshooting a failed installation, therefore, you can verify the general
requirements described in the following section.
1.1. Verifying Administrator Rights
One of the most basic requirements for a successful software installation is that the
user account running the installer program needs local administrator privileges, and to have
these local administrator privileges on a particular computer, the account needs to be a
member of the Administrators group on that computer.
If you are not able to get past the User Account Control prompt when you attempt to
install a program, therefore, you should verify that the account used for installation is
granted local administrator privileges on the computer in question. Typically, having domain
administrator privileges is sufficient because by default, domain administrators are members
of the local Administrators group on every computer that is a member of the same domain.
However, you should perform this verification even if you are already a domain administrator because the Domain
Admins group might have been removed from the local Administrators group.
To determine whether you are a member of the local Administrators group on a particular
computer, you can use the Local Users And Groups console. To open this console in Windows 7,
you can click Start, type edit local users and groups, and then
press Enter. (Note that you can perform this step even if you are not already a local
administrator.) Then, in the console tree of the Local Users And Groups console, select
Groups, and then double-click the Administrators group in the details pane. This procedure
opens the Administrators Properties dialog box, which is shown in Figure 1. This dialog box lists all the local
administrators for that machine.
Figure 1. Viewing the local administrators
If you are a local administrator, you can then use the Add button in the Administrators
Properties dialog box to add other local administrators if desired. Note, however, that in an
enterprise network, it is preferable to control local group membership by using the Restricted
Groups feature in Group Policy.
1.1.1. Running an Installation Program as an Administrator
Running an Installation Program as an Administrator
If you can verify that you are a local administrator but you still see a message
indicating that administrator rights are required to perform the installation, you should
choose the option to run the installer program as an administrator. To do this, right-click
the installation icon for the program, and then click Run As Administrator, as shown in
Figure 2. If a User Account Control
consent or credential prompt appears, provide confirmation or administrator credentials as
Figure 2. Running an installation with administrator privileges
1.2. Verifying Windows 7 Compatibility
If an application is known to be incompatible with Windows 7, you might receive a message
informing you of this fact when you attempt to install the program. If no updated version of the
software is available, you can try altering the compatibility settings on the installer
program or hosting the application in a virtual environment.
1.3. Verifying Trusted Publishers
When you install a new program, Windows 7 checks for a certificate and a digital
signature to authenticate the publisher of the program. To verify this digital signature
properly, the local computer must trust the root certification authority (CA) for the
publisher certificate. Stated another way, the local computer must have installed in its
Trusted Root Certification Authorities certificate store the root certificate in the
certificate chain of the publisher certificate. An administrator can install this root
certificate manually on a local computer or the certificate can be deployed to the Trusted
Root Certification Authority certificate store on many clients through Group Policy.
If the certificate in the installer program is from a trusted publisher and the digital
signature is verified, the installation proceeds normally. However, if no digital signature is
present, or if the local computer is not configured to trust the publisher, you will see a
warning message similar to the one shown in Figure 3.
Figure 3. Avoid installing programs from untrusted publishers.
In general, you should avoid installing programs from unsigned publishers in an
enterprise environment. Such programs might fail during installation, and even if they do
install successfully, they could present stability problems or introduce malware into your
1.4. Verifying Software Logo Testing on a Client Running Windows 7
Occasionally, when you attempt to install an application, you will receive a warning that
the application has not passed Windows 7 logo testing. In this case, you should avoid installing the software.
For an application to pass Windows 7 logo testing, it must meet a number of requirements,
including compliance with specific anti-spyware guidelines, isolation from protected resources
in Windows, a reversible installation, and a digital signature on all files.
1.5. Verifying the Installation Media Location
Before you attempt to install an application, ensure that all the files needed for
installation are available in the required locations. For example, if you have copied an
installer program from a network source to a local computer, be sure that you also copy all
the associated secondary files that are called by the installer program when it runs. (These
secondary files can include .cab files or .ini files.) If you are installing an application
from over the network, verify that any secondary files are also accessible from the local
computer and that you have Read and Execute permissions on these files.
1.6. Verifying Installation Settings
When you attempt to install an application, ensure that the settings that you have chosen
for the installation are configured properly; otherwise, the installation might fail. For
example, if you choose to install a program on a read-only disk, the installation
1.7. Verifying External Connections
Certain applications require connectivity to external sources of data. For example, the
application might require a connection to a database, mainframe, Web site, license server, or
other application server. In this case, verify that the installation program can reach these
1.8. Verifying Licensing and Other Application Constraints
An application might include constraints that will prevent it from installing
successfully. For example, a license or product key might be required to install the
application, or the application might need to be installed with a specific user account.
Verify also that the application architecture is compatible with the local processor. For
example, you cannot install a 64-bit application on a computer with a 32-bit CPU.
1.9. Verifying Application Dependencies
Some applications can be installed only after you first install other updates, features,
service packs, or other applications. Be sure to prepare the client running Windows 7 for
application installation by first installing all the necessary software
The following Web sites are good resources for automating the
installation of applications, as well as other deployment topics:
AppDeploy.com at http://www.appdeploy.com
This Web site provides information about deploying applications that are packaged
using a variety of technologies.
SourceForge at http://unattended.sourceforge.net
This Web site describes how to automate the installation of many older