The REINSTALLMODE property is a string that contains letters specifying the type of reinstall to perform. Options are case-insensitive and order-independent. This property should normally always be used in conjunction with the REINSTALL property. However, this property can also be used during installation, not just reinstall.


The Windows Installer ignores the REINSTALLMODE property during an administrative installation.


Reinstall Option Codes

By default the REINSTALLMODE is "omus".

Code Option
p Reinstall only if the file is missing.
o Reinstall if the file is missing or is an older version.
e Reinstall if the file is missing, or is an equal or older version.
d Reinstall if the file is missing or a different version is present.
c Verify the checksum values, and reinstall the file if they are missing or corrupt. This flag only repairs files that have msidbFileAttributesChecksum in the Attributes column of the File Table.
a Force all files to be reinstalled, regardless of checksum or version.
u Rewrite all required registry entries from the Registry Table that go to theHKEY_CURRENT_USER
registry hive.
m Rewrite all required registry entries from the Registry Table that go to the HKEY_LOCAL_MACHINE
registry hive. Rewrite all information from the Class Table, Verb Table, PublishComponent Table, ProgID Table, MIME Table, Icon Table, Extension Table, and AppID Table regardless of machine or user assignment. Reinstall all qualified components.When reinstalling an application, this option runs the RegisterTypeLibraries and InstallODBC actions.
s Reinstall all shortcuts and re-cache all icons overwriting any existing shortcuts and icons.
v Use to run from the source package and re-cache the local package. Do not use the v reinstall option code for the first installation of an application or feature.


If the REINSTALLMODE property is defined without also defining the REINSTALL property, then the specified "detection" modes still apply and specify the "overwrite" mode for a normal installation. The REINSTALLMODE property only affects those features that are selected normally for installation. The presence of the REINSTALLMODE property does not reinstall features. The reinstallation of features requires the presence of the REINSTALL property.

The option codes for this property correspond to the command-line option '/f'. The command-line option has a default value of 'pecms'.


Only those files containing checksum information are ever verified and repaired. The REINSTALLMODE_FILEVERIFY flag (the ccode above) only repairs files that have msidbFileAttributesChecksum in the Attributes column of the File Table.

Starting with Windows 11 version 24H2, on ARM64 devices, for files that are recognized by the OS as known redistributable files, if the install destination is anything under C:\Windows, then the behavior specified in the flags will be altered to only overwrite older files, the same behavior as if option “o” was specified. All other files in the package remain as they were and honor the flags. The current list of known redistributable files to which this new behavior applies includes MS Visual C/C++ runtimes, MFC, C++ AMP, and C++ OpenMP. The behavior for devices other than ARM64 remains unchanged.


Requirement Value
Windows Installer 5.0 on Windows Server 2012, Windows 8, Windows Server 2008 R2 or Windows 7. Windows Installer 4.0 or Windows Installer 4.5 on Windows Server 2008 or Windows Vista. Windows Installer on Windows Server 2003 or Windows XP. See the Windows Installer Run-Time Requirements for information about the minimum Windows service pack that is required by a Windows Installer version.

See also