Right-click is slow or weird behavior caused by context menu handlers
from: http://windowsxp.mvps.org/slowrightclick.htm
Symptoms
- When you right-click a file/folder, there may be a huge delay before Windows displays the context menu.
- When you try to empty Recycle Bin (from Common Tasks), it opens Quick Finder instead.
- When you click Play All in the Music or Videos folder Common Tasks, nothing may happen.
- When you select multiple files and right click and open / print nothing happens. Whereas, selecting a single file in explorer and right click and open / print, it works fine.
- When you right-click a folder in the Start Menu and choose Open or Explore, nothing may happen. (Whereas, it works fine in Windows Explorer.)
- Error message "Windows Explorer has encountered a problem and needs to close. We are sorry for the inconvenience" when you right-click a folder.
- Right-click is extremely slow only when the network card is enabled.
- When you right-click on a folder and choose Properties, nothing may happen.
- Your image editing program does not start when you click the Edit button in Windows Picture and Fax Viewer.
- Data Execution Prevention (DEP) error occurs when Windows Explorer or Control Panel is launched.
- Nothing happens when you click Slideshow or Print in the Tasks pane in Windows Vista.
- Unable to launch applications (mainly Windows Installer shortcuts) from the recent programs list in the Windows Vista Start menu.
- Device Manager link in the tasks pane does not work in Windows Vista
Cause
These problems are caused by a bad context menu handler. A context menu handler is a shell extension handler that adds commands to an existing context menu (Example: cut, copy, paste, print, Scan with Norton etc). A poorly coded context menu handler may be causing any of the above symptoms. As context menu handlers can be added in different areas (file class, folder, allfilesystemobjects, HKCR\* registry keys), it's a difficult task for an end-user to pinpoint which shell extension is causing the problem.
Resolution
This article describes the two methods to identify the problematic shell extension. Method 1 involves direct registry editing, which is for advanced users. Method 2 is user-friendly and suits most users (recommended method)
Method 1
First, isolate the problem. Observe when the problem occurs. While right-clicking a particular file type? While right-clicking Folders? While right-clicking all file types? As said earlier, context menu handlers can load from any of these areas:
Registry Key | Description |
HKCR \*\shellex\contextmenuhandlers | Files |
HKCR\AllFileSystemObjects\shellex\ contextmenuhandlers | Files and file folders |
HKCR\Folder\shellex\contextmenuhandlers | Folders |
HKCR\Directory\shellex\contextmenuhandlers | File Folders |
HKCR\<ProgID>\shellex\contextmenuhandlers | File class |
HKCR\Directory\Background\shellex\ContextMenuHandlers | Desktop |
If any of the symptoms occur when you deal with a folder, then you may need to inspect the context menu handlers loaded in these areas (AllFileSystemObjects, Folder, Directory). If it's only for a .txt file, inspect the file class of .txt file (HKCR\txtfile). Open Registry Editor and backup the selected branch, delete the context menu handlers one-by-one.
Related article Manage the context-menu entries for folders, drives and Namespace objects
Method 2 - Using ShellExView to determine the Context-menu causing the problem
ShellExView (by Nir Sofer) is an excellent tool
Effective usage of ShellExView to resolve right-click problems
Download ShellExView (from nirsoft.net) and run it. It will scan the registry for all the shell extensions. Once the scan is over and the list is displayed, you need to spot the context menu handlers. Sort the results using "Type", so that the context menu handlers are displayed together.
The rule is to disable non-Microsoft context menu handlers *one-by-one* and verify if the problem is solved. If disabling one does not solve the problem, undo the disabled item and disable the next non-Microsoft handler. Do the same until the problem is solved and finally identify the culprit. Scroll right to see the Company Name column in ShellExView.