Windows Tools

Msizap Notes

Overview | Notes | Syntax | Examples | Related Tools Open Command Prompt

General Information

Troubleshooting Windows Installer

Msizap is designed to be used as a last resort to remove the remnants of a corrupted installation. It is a blunt instrument that can delete installation data that is required by the system.

Before using Msizap, try the following less-risky methods for repairing an failed installation.

Troubleshooting Msizap

When Msizap completes successfully, it displays a log of the objects that it searched, deleted, and changed. To determine whether Msizap ran to completion, look for one of the following statements at the end of the log.

Final log statement Description
Searching for files and folders in the %WINDIR%\Installer folder Msizap successfully completed a command using the T or A parameters. If the Installer folder is empty, then Msizap records a final action, in which it deletes the Installer folder.
No product data was found. Msizap searched successfully, but did not find any of the specified objects on the system. Typically, this happens when a Msizap command is repeated.
FAILED to clear all data. Msizap could not delete all of the data requested by the command. Output that ends with this statement also includes a failure statement and an error code at the point in the log at which the failure occurred. Failures are typically caused by problems with permissions, or with folders that do not reside on the local computer.

Active (Incomplete) Installations

When an installation does not complete or roll back successfully, some remnants of the installation might remain in the system. Windows Installer considers the incomplete installation to be active and will not install new products or reinstall existing products until the installation is resolved.

Because Windows Installer runs only one installation at a time, only one installation is active at any given time, and there will be only one instance of the indicator objects on any system.

The following objects indicate an active, incomplete installation on the system. When an installation completes successfully, Windows Installer automatically deletes these objects from the system.

To search for the InProgress subkey on a system, use Regedit.exe or Reg.exe, tools included in Windows XP Professional. Enter the following Reg command:

reg /query [\\ComputerName] HKLM \SOFTWARE \Microsoft \Windows \CurrentVersion \Installer \InProgress

To search for the Rollback subkey on a system, use Regedit or Reg, tools included in Windows XP Professional. Enter the following Reg command:

reg /query [\\ComputerName] HKLM \SOFTWARE \Microsoft \Windows \CurrentVersion \Installer\Rollback

Msizap and User Profiles

The W parameter, which is new to this version of Msizap, extends the Msizap command to all user profiles in the system. By default, Msizap only deletes the user-specific data stored in or associated with the profile of the current user.

The W parameter acts on all user profiles that appear in HKEY_USERS when the command runs. Profiles of users who have interactive logon rights, but are not logged on to the computer when the command runs, are not affected.

The W parameter is effective when the program is installed in per-machine format (that is, in the All Users profile), or when it has been installed by more than one user of the computer. You can also use W to repair a system for a user other than the current user, such as when an Administrator repairs the configuration of a non-Administrator user.

For information on user-specific and computer-specific installations, see the topics Per-Machine Installations (http://www.microsoft.com/) and Per-User Installations (http://www.microsoft.com/) in the Platform SDK.

Stopping the Windows Installer Service

The * ALLPRODUCTS and T parameters stop the Windows Installer service so that Msizap can obtain exclusive access to the files, folders, and registry subkeys that it needs to change or delete. Because the Windows Installer service starts automatically when needed and stops automatically when idle, you do not need to stop or restart this service manually.

Identifying Package Files

All Windows Installer Package files end with the file name extension .msi. However, the file names are sometimes obscure and are often numeric, making it hard to determine which program the package file installs. Fortunately, this data is included in the summary information associated with each package file.

To display the summary information for a package file, use one of the following methods.

Folders Deleted by Msizap

Msizap attempts to delete the following directories when it is run with the * or T parameters. The list of objects actually deleted appears in the command window when you run Msizap.

Registry Subkeys Deleted by Msizap

Msizap attempts to delete the following registry subkeys when it is run with the * or T parameters. The list of objects actually deleted appears in the command window when you run Msizap.