How to Clean Up Your Messy Windows Context Menu
One of the most irritating things about Windows is the context menu clutter that you have to deal with once you install a bunch of applications. It seems like every application is fighting for a piece of your context menu, and it’s not like you even use half of them.
Today we’ll explain where these menu items are hiding in your registry, how to disable them the geeky way, and an easier cleanup method for non-geeks as well.

Either way, your context menu won’t look like this one anymore…
Cleaning the Context Menu by Hacking the Registry
If you want to clean things up the truly geeky way, you can open up regedit.exe through the start menu search or run box, and then browse down to one of the following keys… sadly the context menu items are not stored in a single location.
Most of the menu items that used for all files and folders can be found by looking at one of these keys:
HKEY_CLASSES_ROOT\*\shell
HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers
HKEY_CLASSES_ROOT\AllFileSystemObjects\ShellEx
Items that are specific to folders can usually be found in one of these keys instead:
HKEY_CLASSES_ROOT\Directory\shell
HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers
The context menu items found at these different locations will need to be handled differently, and we’ll explain how, so keep reading!
Dealing with “shell” Items
Let’s take a look at one item as an example… if you browse down to the shell key under Directory you’ll see the items for Add to VLC media player and Play with VLC. Items under the regular “shell” key are usually really easy to spot, and easy to deal with.

If you want to hide one of these items so that you’ll have to Shift+Right-Click, then you can add a new string value on the right-hand side and name it “Extended” like you can see below:

If you’d like to disable it instead, but don’t want to delete the key, you can add a new string value and call it “LegacyDisable”.

And of course, you could just delete the whole key if you really wanted to… but I’d export a copy just in case.
Dealing with “shellex” Items
You probably noticed the other registry keys above that have “shellex” (Shell Extension) in the name instead of just “shell”. Those types of keys will need to be handled differently… for an example, we’ll head down to one of the keys mentioned above:
HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers
These items will be a little more tough to decipher… but you can usually figure out an item by the key name on the left, and then just modify the (Default) value by putting a few dashes in front of it, which will disable the item without actually deleting anything.
In this example, I’ve clicked on 7-ZIP on the left, and by putting dashes in front of the value data I’ve disabled that menu item.

You’ll want to go through each location in the list at the top of this article until you figure out where exactly the offending items are located. At that point, you can use one of the tricks we mentioned in order to disable that item.
Dealing With Specific File Type Items
Sometimes, although not often, the menu items are located on the registry key for a specific file type. In that case you’ll need to first locate the file extension key by looking under HKEY_CLASSES_ROOT for that extension, which will tell you the name of the key that you need to look for.
For instance, if I wanted to remove a menu item for Excel documents (.xls) I would look at this registry key, which gives me the name of the actual key to look under…
HKEY_CLASSES_ROOT\.xls
As you can see above, the actual type of the file is “Excel.Sheet.8″, so I’ll then browse down to this registry key:
HKEY_CLASSES_ROOT\Excel.Sheet.8\shell
And now I can use the same techniques as above to disable items under “shell”… remember LegacyDisable and Extended? Yep, those work here.
Cleaning Up the Context Menu the Easy Way
Instead of hacking the registry, you can use two different NirSoft utilities to clean up the context menu. Sadly, some of the menu items are implemented as Explorer shell extensions (like the “shellex” keys we explained above), and some are implemented as regular context menu items (like the regular “shell” keys we explained above).
The first tool we will check out is ShellMenuView, which allows us to manage all of those “shell” key items with an easy to use interface.
Just browse down until you find the offending item, then click the Disable button… which will actually create a LegacyDisable key just like we explained in the manual section above.

You’ll see that those items are instantly disabled:

Next, we need to disable those “shellex” or Shell Extensions, using another great Nirsoft utility appropriately called ShellExView. This one works the same exact way as the first utility… just click on the Disable button to remove the items.

After using both of these utilities for just a few minutes, I was able to get my context menu back to the pristine “new install” state.

Go forth, and clean your context menu clutter! And yes, this works the same in all versions of Windows.

Daily Email Updates
You can get our how-to articles in your inbox each day for free. Just enter your name and email below:


Thanks
Good job, very handy.
Thanks, this is excellent information! I’ve used ShellExView in the past, but I greatly appreciate the detailed education about what’s going on in the registry that your geeky section gives.
So, what’s the point to disable TortoiseSVN shell integration? That pristine windows context menu looks bad!
Great! Is there a file we would download instead thoes saves a little more time.
whats the difference between shellexview and shellmenuview?
do we use both or can we just use one to delete the menu items
Nothing I do–and I’ve tried a lot of different methods–gets rid of Paint when I right-click, Open with… on an image. Any suggestions?
on my VISTA I also have the following SHELL key:
HKEY_CLASSES_ROOT\Folder\shell
@thesun:
ShellMenuView manages static context menu entries that are added to a file types shell key.
ShellExView manages Shell Extensions including Context Menu handlers that give you dynamic context menu entries.
Dynamic context menu entries are ones with sub menus, custom icons and ones that change depending on the selected file, like “Add to zip selectedfile.zip”.
Excellent tip.
As always, GEEK rocks!
Another Tool you can use:
* Fast Explorer 2008 – http://thesoftpro.tripod.com/d...../index.htm
No, no, no!!! Just get StudioZai Menu Organizer. A free little program that makes modifying context menus a breeze. Right click on any folder or file, and at the top of the menu you will see “Organize This Menu”. All items appear. Check the appropriate box and the item is removed (or added). I have no interest in Studio Zai, but it simplifies an issue that troubles/frustrates many.
Is there a way that I can make the “Copy as Path” option appear on the rightclick menu as well as the shift-rightclick menu in Vista?
I use it all the time, and it would be nice to be able to eliminate the “oops, didn’t hold shift down while clicking” step in the process.
Isn’t there a way to REORDER the context menu? I don’t want to hide or disable
items, I just want to change the order they’re displayed .
Great tip! Thanks!
Question:
1. do the programs you’ve mentioned work with Vista
2. how do I add an executable to the “new” section of a context menu, e.g. add “MS Document” to the “new” menu.
Thanks!
Graham
Great info!! Thank you very much you have helped me greatly!
IT doesn’t seem to work (shellexview and shellmenuview) the context menus remain the same