MSI 1603 Error

During an installation attempt of an application, a common indicator of remanence left behind of a failed installation attempt can be identified as follows:



This error often occurs when a previous installation attempt has failed or has failed to unregister files.

More information can be found here:

https://docs.microsoft.com/en-us/troubleshoot/windows-server/application-management/msi-installation-error-1603

Resolving this issue usually entails removing registry entries associated with the installer, which can be done painfully searching the registry and manually removing any assosiciations and uninstall entries or using a tool such as MSIZap.

Prerequisites:

  • MSIZap
  • Product code

MSIZap is part of the Windows SDK, and can be a useful part of anyone's tool kit. In order to make use of MSIZap in a targeted fashion, we need to have the product code we are wanting to completely remove from the registry. Once obtaining MSIZap, we can execute it through the command prompt or browse to it via Run application:

Windows key + R 

"D:\pathtotools\MSIZap.exe" TW {product code}

There are a couple different ways of obtaining the ProductCode of an application to remove it - one way is to navigate to the uninstall key in the registry as the GUIDs are the ProductCode.

32bit applications:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall

64bit applications likely found:

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432node\Microsoft\Windows\CurrentVersion\Uninstall

Another option could be to use PowerShell, with a couple options:

We can use the WMI (Windows management instrumentation) to call for these requests and display the information in two ways:

>wmic product where "Name like '%Your Application name%' get Name"," Version"," IdentifyingNumber

>Get-wmiobject win32_Product -filter "name like '%your application name%' | Sort-Object - Property name | Format-Table IdentifyingNumber, Name, Version -autosize

Once we have the ProductCode we can use MSIZap to remove are lingering msi remeance left in the registry, and proceed on with the install.

Comments