Windows Installer fails silently after you upgrade to Windows Installer 3.1 (898628)



The information in this article applies to:

  • Microsoft Windows Installer 3.1
  • Microsoft Windows 2000 Datacenter Server SP3
  • Microsoft Windows 2000 Datacenter Server SP4
  • Microsoft Windows 2000 Professional SP3
  • Microsoft Windows 2000 Professional SP4
  • Microsoft Windows 2000 Server SP3
  • Microsoft Windows 2000 Server SP4
  • Microsoft Windows Server 2003, Datacenter Edition
  • Microsoft Windows Server 2003, Enterprise Edition
  • Microsoft Windows Server 2003, Standard Edition
  • Microsoft Windows 2000 Advanced Server SP3
  • Microsoft Windows 2000 Advanced Server SP4
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional

SYMPTOMS

When you are installing a Microsoft Windows Installer (.msi) package, the installation process will fail silently if the installer tries to install a later version of a system file that the Windows File Protection (WFP) feature helps protect. When you examine the Windows Installer log or the Application log you will see Windows Installer Error 1931.

CAUSE

Before the release of Microsoft Windows Installer version 3.1, a package that tried to install a later version of a WFP-protected file during a silent installation process could not install the file. However, the installation process would continue and would report as successful. With the release of Windows Installer 3.1, the behavior has changed. In version 3.1, the silent installation process does not succeed and then rolls back the installation if the silent installation process cannot install the WFP-protected file. WFP prevents applications from overwriting system files. Windows Installer cannot overwrite WFP-protected files.

RESOLUTION

To resolve this issue, use Method 1 if you are the end user of the installation package. Use Method 2 if you are creating the Windows Installer package.
  • Method 1
    If you are the end user of an installation package to install software on a computer, obtain Windows Installer 3.1 (v2) redistributable.

    Windows Installer 3.1 (v2) redistributable is an update to Windows Installer 3.1. This update addresses the issue that is described in the "Symptoms" section.

    For more information about Windows Installer 3.1 (v2), click the following article number to view the article in the Microsoft Knowledge Base:

    893803 Windows Installer 3.1 (v2) is available

    To determine which version of Windows Installer is currently installed on the computer, follow these steps:
    1. In Windows Explorer, locate the following file:

      Msi.dll

      This file is located in the Windows\System 32 folder.
    2. Right-click Msi.dll, and then click Properties.
    3. Click the Version tab. Note the file version number.
      • If the version number is 3.1.4000.1823, the computer has Windows Installer 3.1 (v1) installed.
      • If the version number is 3.1.4000.2435, the computer has Windows Installer 3.1 (v2) installed.
  • Method 2
    If you are creating a Windows Installer package to install an application that you have created, we recommend that you set a condition in the Windows Installer database that you create for the Setup project to prevent the WFP-protected components from installing on operating systems that have WFP. This method is the preferred workaround. A Windows Installer-based installation process should not try to update WFP-protected files.

    To set a condition, add the condition to the Condition column of the Component table in the Windows Installer database. For more information, visit the following Microsoft Developer Network (MSDN) Web site:

STATUS

Microsoft has confirmed that this is a problem in Microsoft Windows Installer 3.1.

MORE INFORMATION

For more information about WFP, click the following article number to view the article in the Microsoft Knowledge Base:

222193 Description of the Windows File Protection feature


Modification Type:MinorLast Reviewed:8/18/2005
Keywords:kbMSIFAQ kbsetup kbprb KB898628 kbAudDeveloper kbAudEndUser kbAudGeneralUser kbAudITPRO