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:
Items that are specific to folders can usually be found in one of these keys instead:
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:
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…
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:
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.
Programmer by day, geek by night, The Geek, also known as Lowell Heddings, spends all his free time bringing you fresh geekery on a daily basis. You can follow him on Google+ if you'd like.
- Published 11/19/08