Cause: This error occurs if the DisableRegistryTools Policy is enabled (mostly due to an accidental modification or a virus present in your system).
You can perform the steps in any of below methods to remove the registry editing restrictions.
Method 1: Using the REG.EXE console tool
1. Click Start → Run and type this command:
REG add HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System /v DisableRegistryTools /t REG_DWORD /d 0 /f
Now, you should be able to launch the Registry Editor.
Method 2: Using the Group Policy Editor
User Configuration → Administrative Templates → System
Double-click “Prevent access to registry editing tools”. It will probably be not configured or enabled.
If it’s enabled, disable it and if it’s not configured, first enable it, apply settings and then disable it.
Exit the Group Policy Editor
Run gpupdate in command prompt to apply the group policies.
Note: If the setting already reads Not Configured, set it to Enabled, and click Apply. Then revert it back to Not Configured. This ensures that the DisableRegistryTools registry value is removed successfully.
Method 3 : Copy the following code in a notepad and save it as "reg.vbs". Then double click on it to run it. The registry should be enabled.
'Enable/Disable Registry Editing tools
Option Explicit
'Declare variables
Dim WSHShell, n, MyBox, p, t, mustboot, errnum, vers
Dim enab, disab, jobfunc, itemtype
Set WSHShell = WScript.CreateObject("WScript.Shell")
p = "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System\"
p = p & "DisableRegistryTools"
itemtype = "REG_DWORD"
mustboot = "Log off and back on, or restart your pc to" & vbCR & "effect the changes"
enab = "ENABLED"
disab = "DISABLED"
jobfunc = "Registry Editing Tools are now "
'This section tries to read the registry key value. If not present an
'error is generated. Normal error return should be 0 if value is
'present
t = "Confirmation"
Err.Clear
On Error Resume Next
n = WSHShell.RegRead (p)
On Error Goto 0
errnum = Err.Number
if errnum <> 0 then
'Create the registry key value for DisableRegistryTools with value 0
WSHShell.RegWrite p, 0, itemtype
End If
'If the key is present, or was created, it is toggled
'Confirmations can be disabled by commenting out
'the two MyBox lines below
If n = 0 Then
n = 1
WSHShell.RegWrite p, n, itemtype
Mybox = MsgBox(jobfunc & disab & vbCR & mustboot, 4096, t)
ElseIf n = 1 then
n = 0
WSHShell.RegWrite p, n, itemtype
Mybox = MsgBox(jobfunc & enab & vbCR & mustboot, 4096, t)
End If
Method 4 : Heres the script given in italics below. Just copy and paste in a notepad. Name the file as "editregenable.reg". After you get the file just right click and select merege. Then restart the computer:
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System]
"DisableRegistryTools"=dword:00000000
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System]
"**.del.DisableRegistryTools"=-
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Group Policy Objects\LocalUser\Software\Microsoft\Windows\CurrentVersion\Policies\System]
"DisableRegistryTools"=dword:00000000
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Group Policy Objects\LocalUser\Software\Microsoft\Windows\CurrentVersion\Policies\System]
"**del.DisableRegistryTools"=-
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]
"NoSaveSettings"=dword:00000000
The effects are usually instant, else it works after restarting your computer .
Now try to open the registry editor and see if it works.
Note: If none of the above methods works or your registry editor again gets automatically disabled say after restart, then it is highly likely that there is a virus present in your system. Hence it is recommended that the virus is first removed and then the above steps are performed.