Most advanced users know all about it, but if you didn’t know what the Windows registry is, it’s a several megabyte database that stores most of the information for your Windows operating system. It contains thousands of configuration settings for Windows itself, third party software, hardware and preferences for the individual users on the computer. Editing the Windows registry can be dangerous if you don’t know what you’re doing because if you wrongly delete an important key, Windows might not be able to boot up the next time.

So no matter how confident and experienced you are, it’s always a sensible idea to be a little bit safer and make a backup of the registry keys that you intend to edit, or even better, make a complete backup of the whole registry as well just in case. If you’re trying to edit or delete keys from the registry to repair or recover from certain problems, you might find that some keys won’t let you do anything with them and you’ll get an error such as “Cannot delete xxxxx: Error while deleting key”. These keys are usually protected to stop accidental deletion and it’s important you have the correct key before trying to change it.

You could also be the administrator on the computer, but still can’t manipulate the required key, which might sound quite odd. Even though the administrator account has a great deal of control, there are other hidden accounts and levels on the system which have even greater access and therefore standard administrator privileges are not enough. To solve this problem, you have to force the registry to allow the logged on user full control of the subkeys. Below are several different ways of performing this operation to give you the required access.

1. Run Regedit using the RunAsSystem tool

As well as being able to take ownership of registry keys and setting the permissions manually, another thing you can do is run the Windows registry editor with highly elevated privileges. This can be achieved with the System account that is even more powerful than the administrator and therefore has more access to protected registry keys. This has the added bonus of allowing you to view the SAM and SECURITY registry keys which are otherwise hidden. A small portable tool called RunAsSystem is able to do this for any program you tell it to, here’s how.

2. Click the Browse button and look for regedit.exe which is normally located in the Windows folder, or simply type regedit into the box.

3. Click OK which will open the Registry Editor. If you open up the Task Manager, and as you can see from the screenshot below, regedit.exe is now running under the SYSTEM account where it would normally run under the user’s standard account. You can delete several legacy keys without the “Error While Deleting Key” message.

RunAsSystem is also useful if you want to restore any registry keys that were deleted this way because importing the keys would produce a “Cannot import file.reg: Error accessing the registry” message from the standard admin/user account. The solution is to either run regedit as System, and import it from File -> Import, or run the .reg file using RunAsSystem.

2. Use the PsExec tool

The PsExec command line utility is part of the PSTools remote administration set of command line utilities from Sysinternals. Like the RunAsSystem tool, PsExec also allows you to see the SAM and SECURITY keys that are hidden under normal circumstances. It works in a similar way too by elevating the registry editor to run under the System account granting more control over the registry. You need to make sure you have administrator privileges in the first place for this to work.

1. Download and extract the PSTools.zip file from the Sysinternals website. Right click on the PsExec utility and click Create Shortcut (or Send to -> Desktop).

2. Right click on the shortcut -> Properties and add the following to the end of the line in the Target box:

{space}-i -d -s c:\windows\regedit.exe

3. Click OK and then double click the shortcut to launch Regedit under the System account. If you’re still unable to delete or edit the keys you want, try the next solution below.

3. Registrar Registry Manager

Registrar is a registry editing tool with several advanced features and is a lot more like a standard Windows Explorer interface with toolbar buttons for back, forward, cut, copy, paste etc. It also has advanced searching and comparing functions, bookmarking, a registry defragmenter and a backup and restore option. There are other features such as multi level undo and remote registry editing, but they along with several other features are only available in the Professional version which costs around $55.

Thankfully there is a free Home Edition that allows you to browse and edit the registry without any problems, the only downsides are the nag screen and not knowing some functions aren’t in the free version until you click on them. Like the tools above it also shows the usually hidden SAM and SECURITY keys, and while testing it was able to edit or delete a number of the registry keys that the tools above couldn’t. Keys you would normally have to edit the permissions manually to delete such as those that need removing to repair the Features window problem in Windows Vista or 7 are done so with the click of a button.

Usage is pretty much the same as regedit and you simply navigate your way to the required key and then right click on it or use the buttons in the toolbar to rename or delete etc. If manually editing registry permissions sounds to confusing, this might be your best option. Registrar can also be made portable by copying its folder from Program Files, and works on Windows XP up to Windows 8.

If even these tools aren’t working for you, the next option will be to edit the permissions for the key manually using Regedit or simply use a low-level anti-rootkit tool. On page 2 we’ll show you how.

I used the RunAsSystem tool…..but I still had to change the owner of the key to ‘SYSTEM’ user before I could successfully delete the key. I suppose I could have changed it to ‘everyone’ and it should have worked also. In any case, thank you.

This completely worked, thank you! You might want to note that you MAY need to adjust the registry permissions of the key if it doesn’t let you delete it. My SYSTEM account did not have full rights but i checked the checkbox and added it for each key, then deleted them.

Thanks, I used your advice to manually take ownership of a registry key that would not delete. An error message appeard in the key identified by CCleaner as not responding. I changed ownership and deleted right away. Good advice, thanks. BC

I love to use PCHunter for my win 8.1pro. iolo 12.5 blushed me when i was removing a registery folder along with sub containers with error “Cannot delete:error while deleting key”. Million Thanks for the article and the companies who introduced the tools to solve our problems on the fly.

Thanks for this very useful tutorial. PC hunter which is working on a 64 bit system and windows 8.1 was the only tool that allowed me to modify a value. In order to disable the service of Windows Defender.
But this program was marked as a maybe dangerous program by my antivirus Kaspersky.

The RunAsSystem utility solved my problem. I found that even taking ownership and granting permissions wasn’t enough to delete the registry keys I needed to; I had to rename them first. Stupid and annoying, but true. Try to delete > fail. Rename > try to delete> succeed.

Thank you!!! I had a pesky key whose SYSTEM principal was keeping the key owner from having full control. RunAsSystem worked wonderfully. Why is Windows such a PITA compared to UNIX for system control?

Thaaanks so much, Raymond!
That helps me a lot..
Frankly, I was quite desperate when I receive message like “…cannot be opened. An error is preventing this key from being opened. Details: Access is denied.” . I thought I should recover with kinda sophisticated software. Bu then, I ended up choosing run as system software, aand my proble solved. I can reset the permission in the register subdirectory. Sooo much worth for a 281kb file :)

Amazing – I used PC Hunter’s registry editor to disable Symantec’s antivirus context menu key, which I had been unable to do by any other method because I could not change the key permissions. I didn’t really expect PC Hunter to do any better, but I could edit the key straight away – how do you do that?

Anyway, many thanks for making this possible – got rid of the pesky context menu entry at last.

I’d taken out Comodo Firewall on a Windows 7 Home Premium 64 bit last week, and was going stir trying to get legacy keys out (all BUT driver inspect.sys and legacy keys removed by usual uninstall)…nobody else had the right permissions description, but I tried YOURS on all CF legacy keys in one sitting, rebooted, and BAM! All those enum legacy keys stopped regenerating! You keep things not only easy, but fast and bang-on! Thank you!

Thanks – this helped me out as well. I tried doing an upgrade install with slipstream disk for Vista SP2, but couldn’t get that to work. I deleted registry keys found in checksur.log and Windows feature box came up with info finally

Ray,
I normally don’t reply to these posts but… Thank You!
I need to be able to manage 2008 group policy modifications from my windows 7 machine because or 2003 group policy management server isn’t able to manage some new schema functions.
But you got me in business with your post.
Thanks again!