After a program was installed by an admin user, different users with no admin rights experience the following problem with their logins to the same computer.
At the
Basically you cannot install a KeyPath registry item that is going to be changed by the user, for the simple reason that Windows Installer will believe it is broken and repair it.
The simplest cure is to give that component (in your WiX) a null component ID. As the documentation her says, under ComponentId:
https://msdn.microsoft.com/en-us/library/windows/desktop/aa368007(v=vs.85).aspx
a component with a null id is not registered and not subject to repair.
You should also verify what the actual missing component is by looking at the Windows Event log, Application, and look for MsiInstaller entries that will refer to the broken or missing component. There might really be another component that appears to be broken, such as another file or registry entry. If this is the case then the repair of the HKLM registry item could be a downstream effect because when a component is repaired Windows will repair and reinstall the entire feature, and that could include the HKLM entry. Either way, it is not safe to have an HKLM entry (registered with MSI) that can be altered because there are other scenarios (such as repair from Programs&Features or right click the MSI file) that could rewrite the registry entry. However the main point is that a repair will replace that registry entry.