This is caused by incorrect registry permissions on the key described in the error message. Usually the administrators group does not have access to the key.
Of course the key UNKNOWN doesn't exist. The key is actually here: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Components
Most websites will tell you to run the following script, however it doesn't seem to be able to set the permissions properly in most cases I have seen.
cd /d "%ProgramFiles%\Windows Resource Kits\Tools"
subinacl /subkeyreg HKEY_LOCAL_MACHINE /grant=administrators=f /grant=system=f
subinacl /subkeyreg HKEY_CURRENT_USER /grant=administrators=f /grant=system=f
subinacl /subkeyreg HKEY_CLASSES_ROOT /grant=administrators=f /grant=system=f
subinacl /subdirectories %SystemDrive% /grant=administrators=f /grant=system=f
subinacl /subdirectories %windir%\*.* /grant=administrators=f /grant=system=f
secedit /configure /cfg %windir%\inf\defltbase.inf /db defltbase.sdb /verbose
You can fix each individual key by taking ownership, and then granding Administrators permissions to the key manually. The problem is that there are usually a large number of problematic keys, making fixing them one by one quite tedious.
Here are instructions to give administrators full rights to the everything under the Components key and restore ownership back to the default (SYSTEM):
1. Open Regedit, and browse to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Components.
2. Right-click the "Components" key and select "Permissions".
3. Click the "Advanced" button
4. Click the "Owner" tab
5. Click "Administrators", and check "Replace owner on subcontainers and objects.
6. Click Apply. You will receive an error that "Registry Editor could not set owner on the key currently selected, or some of its subkeys.". This is normal, the owner was usually set regardless of this message
7. Click the Permissions tab
8. Check the "Replace all child object permissions with inheritable permissions from this object" item.
9. Click Apply, then click "Yes" to confirm.
10. Click the "Owner tab".
11. Click "Other users or groups", and enter "SYSTEM".
12. Check "Replace owner on subcontainers and objects".
13. Click OK and close Regedit.
Now you can attempt to install your software again, and it should work.
2 comments:
nice to be here networknick.blogspot.com owner discovered your site via search engine but it was hard to find and I see you could have more visitors because there are not so many comments yet. I have discovered site which offer to dramatically increase traffic to your site http://mass-backlinks.com they claim they managed to get close to 4000 visitors/day using their services you could also get lot more targeted traffic from search engines as you have now. I used their services and got significantly more visitors to my blog. Hope this helps :) They offer most cost effective services to increase website traffic at this website http://mass-backlinks.com
Thanks this helped me a lot. I would have spent even longer on this issue if I had not seen your post.
Post a Comment