Windows Installer 3.1 Upgrade Problems

If you have Windows Installer 3.1 on your computer, then the installation of a Microsoft Windows Installer (.msi) package may fail if the installer attempts to install a more current version of a system file that is being protected by the Windows File Protection (WFP) feature. Additionally, you may notice Windows Installer Error 1931 is added to the Windows Installer log or the Application log

Additional Information: WFP is a feature that helps in protecting Windows operating systems and other program files, usually with file name extensions, .dll, .exe, .ocx, and .sys. Some True Type fonts may also be protected by the feature. Primarily, file signatures and catalog files are used to ensure that the files being protected are correct Microsoft versions. WFP allows these files to be replaced only when a hotfix is installed by using the Update.exe or HOtfix.exe, or if the Operating System is upgraded using Winnt32.exe or a Windows Update is performed.

Cause of the Error

Windows Installers that were released before the version 3.1 allowed the silent installation process to continue even if the software package you were trying to install failed to install a later version of the file that was protected by WFP.

However, this behavior changed with Windows Installer 3.1. If the silent installation process fails to update a file that is protected by WFP, the installation process rolls back.

Resolution Method

The resolution methods for this issue depend on whether you are the end user of a package being installed or you are the developer who is creating the Windows Installer Package that is generating the problem.

Method 1: Use this method if you are the end user of the installation package.

This error usually occurs if you have the Windows Installer 3.1 version 1 installed on your PC. To check the version of Windows Installer on your computer, perform the following steps:

  1. Open Windows Explorer.
  2. Navigate to the C:\Window\System32 folder.

Note: Here, C: represents the system root folder in which your Windows is installed.

  1. Here, locate the Msi.dll file and then right-click on it.
  2. Select Properties.
  3. Open the Version tab.
    • If the file version is 3.1.4000.1823, it implies that you have Windows Installer 3.1 version 1 on your computer.
    • If the file version is 3.1.4000.2435, it implies that you have Windows Installer 3.1 version 2 on your computer.

If you have Windows Installer 3.1 version 1 on the system, then you will have to upgrade to version 2 to repair the error. To do this, open the 893803 (http://support.microsoft.com/kb/893803/) Windows Installer 3.1 (v2) Web page and then download and install the update on your computer.

Method 1: Use this method if you are creating a Windows Installer package.

When creating an installer package for your application, it is recommended that in the Windows Installer database you create, that you set a condition that prevents WFP-components from installing on computers with the WFP feature.

For more information on how to set the condition, you may refer to the Microsoft MSDN Web site.