Export (0) Print
Expand All
Expand Minimize
6 out of 10 rated this helpful - Rate this topic

Replacing Existing Files

Because unnecessary file copying slows an installation, the Windows Installer determines whether the component's key file is already installed before attempting to install the files of any component. If the installer finds a file with the same name as the component's key file installed in the target location, it compares the version, date, and language of the two key files and uses file versioning rules to determine whether to install the component provided by the package. If the installer determines it needs to replace the component base upon the key file, then it uses the file versioning rules on each installed file to determine whether to replace the file.

Note that when authoring an installation package with versioned files, the version string in the Version column of the File table must always be identical to the version of the file included with the package.

The default file versioning rules can be overridden or modified by using the REINSTALLMODE property. The installer uses the file versioning rules specified by the REINSTALLMODE property when installing, reinstalling, or repairing a file. The following example shows how the installer applies the default File Versioning Rules. The default value of the REINSTALLMODE property is "omus".

The following component key files are installed on the system before the component is reinstalled.

FileVersionCreate dateModified dateLanguage
FileA1.0.00001/1/991/1/99ENG
FileB2.0.00001/1/991/1/99ENG
FileC1.0.00001/1/991/1/99ENG
FileD1.0.00001/1/991/2/99ENG
FileEnone1/1/991/1/99none
FileF

(modified > create)

none1/1/991/2/99none
FileG1.0.00001/1/991/1/99ENG
FileH1.0.00001/1/991/1/99ENG,FRN,SPN
FileI1.0.00001/1/991/1/99ENG,FRN
FileJ1.0.00001/1/991/1/99ENG,GER,ITN

 

The following component key files are included in the installer package.

FileVersionCreate dateModified dateLanguage
FileA

(marked same)

1.0.00001/1/991/1/99ENG
FileB

(earlier version)

1.0.00001/1/991/1/99ENG
FileC

(later version)

2.0.00001/1/991/1/99ENG
FileD

(later version)

2.0.000012/31/981/10/99FRN
FileE

(marked same)

none1/1/991/1/99none
FileF

(new file)

none1/3/991/3/99none
FileG

(new language)

1.0.00001/1/991/1/99FRN
FileH

(new language)

1.0.00001/1/991/1/99ITN,ENG,GER
FileI

(more languages)

1.0.00001/1/991/1/99ENG,FRN,SPN
FileJ

(fewer languages)

1.0.00001/1/991/1/99GER

 

The following component key files stay on the system after the component is reinstalled. The state of the key file determines the state of any other files in the component.

FileVersionCreate dateModified dateLanguage
FileA (original)1.0.00001/1/991/1/99ENG
FileB (original)2.0.00001/1/991/1/99ENG
FileC (replacement)2.0.00001/1/991/1/99ENG
FileD (replacement)2.0.000012/31/981/10/99FRN
FileE (replacement)none1/1/991/1/99none
FileF (original)none1/1/991/2/99none
FileG (replacement)1.0.00001/1/991/1/99FRN
FileH (replacement)1.0.00001/1/991/1/99ITN,ENG,GER
FileI (replacement)1.0.00001/1/991/1/99ENG,FRN,SPN
FileJ (original)1.0.00001/1/991/1/99ENG,GER,ITN

 

Related topics

CRC Checking During an Installation

 

 

Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft. All rights reserved.