Home → Kurzweil 1000 (K1000) → Kurzweil 1000: Troubleshooting → Error: 1402 Could not open key, during install
2.12. Error: 1402 Could not open key, during install
Last updated: June 2017
Problem:
During installation of K1000 (we have encountered this in K1000 v14), a user may encounter Error 1402, noting a registry key that the user does not have sufficient access to. Clicking OK will roll back the installation.
Why is this happening?
On the computer, there are subkeys of HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Components that do not have an owner. When a key doesn't have an owner it cannot be accessed by our installer.
Most computers aren't affected by this issue. It is unclear what is causing it, but it may be related to unique computer images used by certain manufacturers (e.g. DELL) or a result of a Windows update (e.g. updating Windows 7 to Windows 10).
It's possible to add an owner to each key individually using the Windows GUI. However, using the Windows GUI you cannot apply ownership from a parent key to a child object/key if that object/key does not have an owner itself.
There's two solutions here:
- You'll have to run the installer, get the error, and then drill down into the registry key noted in that error to find the key. Give that key an owner. Repeat the process again, probably more than a dozen times. This could take hours.
- You can use SetACL.exe to add owners to keys in a recursive fashion.
Solution:
1. Copy the applicable (32 or 64 bit) version of SetACL.exe to C:\
2. Open a Windows Command Prompt with elevated permissions, via right-click > Run as Administrator cmd.exe
3. In the Command Prompt window, copy and then paste the following command lines:
C:\SetACL.exe -on "hklm\software\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Components" -ot reg -actn setowner -ownr n:S-1-5-32-544 -rec yes -log "C:\SetACLownerlog.txt"
C:\SetACL.exe -on "hklm\software\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Components" -ot reg -actn ace -ace "n: S-1-5-32-544;p:full" -rec yes -log "C:\SetACLpermissionlog.txt"
Doing this should resolve your 1402 errors.
Troubleshooting:
If you encounter further errors during the installation that are not 1402 errors, here are some troubleshooting solutions that may resolve the issue:
1. Make exceptions for Kurzweil 1000.exe, temporarily disable, and/or uninstall third-party anti virus software. EST anti virus software has been known to prevent K1000 from installing.
2. Make sure Windows is up to date, and has the latest version of .NET and the applicable C++ dependencies.
3. Regarding 1722 errors, see here: http://support.cambiumtech.com/index.php?pg=kb.page&id=1771