Jump to content

per machine VS per user


Recommended Posts

Needa little help understanding a software install issue. MY inexperience in MSI file is killingme here.

I have asoftware install package that basically copies a bunch of OCx and DLL files, then is supposed to make entries for these files in the HKEY_Classes_root section of the registry.

Installer works great EXCEPT the pacakge only works for the person who installed it. Each new user has to reinstall the package.

The person who created the MSI pacakge did set the install mode to PER USER instead of PER MACHINE in the MSI file. This appears to cause the file registry information to be written to HKEY_Classes_root and to Hkey_current_User\software\classes.

This is what confuses me . Since the information is designed to be written to HKCR, and (if I have this right) HKCR is merged with HKLM, shouldn't this information and the files be available to all users on a per machine basis? Or is there somehing about being written to HKCU\software\classes that overrides the entries in HKCR?

Link to comment
Share on other sites


Entries in HKCU\software\classes override HKCR entries. If an entry for X exists in HKCU, then that is used. If an entry does not exist for X, then it looks to HKCR and uses that value.

I think it is a simple case of the program configuring per-user information as a post-setup task, rather than being done at runtime in the actual program to see if the entries exist in HKCU and create per-user entries if needed. Grab Registry Monitor at http://www.sysinternals.com and execute the program while monitoring to see where it fails. If it fails after reading HKCU then the program is broken.

You also want to check the permissions on the keys.

Link to comment
Share on other sites

you can use an msi editor like MS free ORCA (i prefer Installer Design Studio from ScriptLogc) and edit the per-use/machine configuration of the msi without any problem. so when you install your program, it will be installed for all users. also, msi setup have some arguments, i believe that you can use switch ALLUSERS=1 but i dont know if it will work with any msi.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...