[This is preliminary documentation and subject to change.]
The MsiReinstallFeature function validates or corrects problems with features.
UINT MsiReinstallFeature(
  LPCTSTR szProduct,       // product code
  LPCTSTR szFeature,       // feature ID
  LPCTSTR dwReinstallMode  // one or more REINSTALLMODE modes
);
 | Value | Meaning | 
|---|---|
| REINSTALLMODE_REPAIR | Repair any defects encountered. | 
| REINSTALLMODE_FILEMISSING | Reinstall only if the file is missing. | 
| REINSTALLMODE_FILEOLDERVERSION | Reinstall if the file is missing or is an older version. | 
| REINSTALLMODE_FILEEQUALVERSION | Reinstall if the file is missing or is an equal or older version. | 
| REINSTALLMODE_FILEEXACT | Reinstall if the file is missing or is not an exact version. | 
| REINSTALLMODE_FILEVERIFY | Check sum executables, and reinstall if they are missing or corrupt. | 
| REINSTALLMODE_FILEREPLACE | Reinstall all files regardless of version. | 
| REINSTALLMODE_USERDATA | Insure required user regular entries. | 
| REINSTALLMODE_MACHINEDATA | Insure required machine regular entries. | 
| REINSTALLMODE_SHORTCUT | Validate shortcuts and progman items. | 
The MsiReinstallFeature function can also verify registry entries and shortcuts.
  Windows NT: Requires version 4.0 or later. Available as a redistributable for Windows NT 4.0.
  Windows: Requires Windows 95 or later. Available as a redistributable for Windows 95.
  Windows CE: Unsupported.
  Header: Declared in msi.h.
  Import Library: Use msi.lib.
  Unicode: Implemented as Unicode and ANSI versions on Windows NT.
Installation and Configuration Functions