Showing results for 
Show  only  | Search instead for 
Did you mean: 
Level 3

Must a component have a key file?

I know that the key file is used for finding components.

then, if the component doesn't have key file, does it cause a problem??
Labels (1)
0 Kudos
(2) Replies
Level 12

If you have not, please refer to KeyPath column in Component Table.
0 Kudos
Level 8

Each component should have a key file. The key file's name and the complete path are used in combination by the Windows Installer for various purposes.Thus, key files are also called key path.

When an end-user triggers a repair, the Windows Installer engine searches for the existence of these key files. If any of the key files is found missing from any of the components, the feature is re-installed.

The recommended way is to have one file per component and to mark it as key. Also, we should never have more than one:
.exe, .dll, .ocx, .chm, .hlp
files in one component. Also, these should be marked as key.

The logic for above statement:
The exes and dlls are critical for any app and if missing have to replaced during repair. Help files are also critical. Users need info and if not available the software becomes a burden.

then, if the component doesn't have key file, does it cause a problem??

Well its like walking on a field strewn with land-mines...
When you do not assign a key file, the directory under which the component gets installed is taken to be the key file.
The issue is:
When you lose a file from that component, the repair option will not do anything for you. The directory(key file) still exists and in the eyes of Windows Installer all is fine.
0 Kudos