UPDATE: This tutorial will also work in Windows 8.
We have posted several tutorials in past which help in adding your favorite programs shortcuts and other useful system shortcuts in Windows 7 Desktop context menu. Some of them are as follows:
- How to Add Your Name in Windows 7 Desktop Context Menu
- How to Add Program Shortcuts and Other Useful Shortcuts in Windows 7 Desktop Context Menu?
- Customizing "Screen Resolution", "Gadgets" and "Personalize" Options in Windows 7 Desktop Context Menu
Some AskVG readers complained that all these tutorials add the programs shortcuts in the main Desktop context menu which makes the whole menu large. They asked a method to add cascading menus in Desktop context menu.
I liked the idea and I tried to create cascading menus containing programs shortcuts which also helps in grouping the programs. For example, you can create different cascading menus like Applications, Browsers, Media Players, System Shortcuts and when you hover your mouse cursor over them, they open a list containing all your favorite programs. In this way, it'll not make the main context menu large as shown in following screenshots:


So today in this tutorial, you'll learn how to create cascading menus in Windows 7 Desktop and My Computer context menus.
This tutorial has been divided in 2 parts:
- Creating cascading menus and adding programs shortcuts
- Adding functionality to the shortcuts by registering them
So without wasting any time, here we start the tutorial:
PART 1: Creating cascading menus and adding programs shortcuts
1. Type regedit in RUN or Start Menu Search box and press Enter. It'll open Registry Editor.
2. Now go to following key:
HKEY_CLASSES_ROOT\DesktopBackground\Shell
PS: If you want to add the cascading menu in My Computer context menu instead of Desktop context menu, then go to following key instead of the above mentioned key:
HKEY_CLASSES_ROOT\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell
3. Now we'll need to create a new key under "Shell" key. Right-click on "Shell" key and select "New -> Key". Give the new key any desired name e.g. "Menu1" (without quotes).
4. Now select this newly created key "Menu1" and in right-side pane, we'll need to create following 4 String values:
- MUIVerb
- SubCommands
- Icon
- Position
Icon and Position are optional but MUIVerb and SubCommands are compulsory.
MUIVerb contains the name of cascading menu which will be displayed in the context menu. You can set its value to any desired name like Apps, Browsers, etc. Feel free to set any name.
SubCommands contains list of commands separated by semi-colon (;) which you want to show under cascading menu. You can't add any program shortcut directly. First you'll need to give any desired command name in this list and after that you'll need to register it using PART 2 so that it can start working.
5. If you are confused about "SubCommands" String value, this point will clear all your doubts.
Suppose you have created a cascading menu "Apps" using Step 3 and now you want to add Notepad and Calculator shortcuts under it. In this case, you'll need to set following as "SubCommands" value:
notepad;calc
Above value can be changed according to your requirement. You can use np;ca instead of notepad;calc. But you'll have to use the same name while registering those commands using PART 2.
PS: If you want to put a separator between menus, just use Pipe symbol (|) between commands. For example, notepad;|;calc. Thanks to our reader "e01Z" for this trick...
6. Icon String value can be used to show an icon for your cascading menu. In our example, we have set its value to explorer.exe that's why its showing Windows Explorer icon for the "Apps" cascading menu.

7. Position String value can be used to define the position of cascading menu in the context menu. By default the cascading menu is shown in the middle but you can set its position at Top or Bottom with the help of "Position" String value.
8. You can create more than one cascading menus using Step 3 and 4.
PART 2: Adding functionality to the shortcuts by registering them
Once you have added the program shortcuts to cascading menus, you'll need to register the commands mentioned in "SubCommands" String value using following method:
1. Go to following key:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\Shell
2. Under this key, we'll need to create new keys for each command mentioned in "SubCommands" String value.
In our example, we used 2 commands notepad and calc, so we'll need to create 2 keys under "CommandStore\Shell" key with the same names notepad and calc.
3. Once you create the key, select it and in right-side pane set value of "(Default)" to the name which you want to show in cascading menu. For example set its value to Notepad or Calculator or any other desired string.
4. If you also want to show an icon for it, create a new String value with the name icon and set its value to program's EXE file path or any other desired icon. For example, to show Notepad icon for Notepad shortcut, you can set value of Icon to notepad.exe
5. Now final step! Create a new key under the recently created keys, e.g. notepad or calc and give it name command.
Click on it and in right-side pane, set value of "(Default)" to the path of your desired program's EXE file. For example, if you want to open Notepad when you click on "Notepad" entry in cascading menu, set value of "Command" to notepad.exe

PS: Notepad is a Windows application, so you can omit the full path but if you want to execute any 3rd party program, you should give full path of its EXE file.
That's it. Now you'll see your desired cascading menus containing your favorite programs shortcuts in Desktop or My Computer context menus.
BONUS: Ready-Made Registry Script
If you are still confused or afraid in following the above method, you can copy following code, paste in Notepad and save it with the name "cascade.reg" (including quotes). Run the saved file and it'll add Notepad and Calculator in a cascading menu "Apps" in Desktop or My Computer context menus:
For Desktop context menu:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\DesktopBackground\Shell\Menu1]
"MUIVerb"="Apps"
"SubCommands"="notepad;calc"
"icon"="explorer.exe"[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\notepad]
@="Notepad"
"icon"="notepad.exe"[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\notepad\command]
@="notepad.exe"[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\calc]
@="Calculator"
"icon"="calc.exe"[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\calc\command]
@="calc.exe"
For My Computer context menu:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\Menu1]
"MUIVerb"="Apps"
"SubCommands"="notepad;calc"
"icon"="explorer.exe"[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\notepad]
@="Notepad"
"icon"="notepad.exe"[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\notepad\command]
@="notepad.exe"[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\calc]
@="Calculator"
"icon"="calc.exe"[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\calc\command]
@="calc.exe"
If you want to add any other program shortcut or want to change the names of cascading menu or program shortcuts, you just need to change the part mentioned in BOLD.
NOTE: If you want to remove the cascading menus, simply delete the keys created in Step 3 under PART1 and Step 2 under PART2.
Further Read:
- Add "Windows Apps" Cascading Menu in Windows 7 Desktop Context Menu
- Add "System Tools" Cascading Menu in Windows 7 Desktop Context Menu
- Add "System Shortcuts" Cascading Menu in Windows 7 Desktop Context Menu
- Add "Desktop Shortcuts" Cascading Menu in Windows 7 Desktop Context Menu
- Add "Windows Apps" Cascading Menu in My Computer Context Menu in Windows 7
- Add "System Tools" Cascading Menu in My Computer Context Menu in Windows 7
- Add "System Shortcuts" Cascading Menu in My Computer Context Menu in Windows 7
- Add "Desktop Shortcuts" Cascading Menu in My Computer Context Menu in Windows 7
Posted by: Vishal Gupta | Categories: Windows 7
Jimmydiehand
Hello Vishal, great Tutorial!
Helped me alot to understand how the context menu interacts with the registry.
Unfortunately I have the same problem as Toni. There are programs that put themselves in the context menu, but where the interaction with the registry and/or dlls are unclear. In that case it is impossible to delete and then recreate the contextmenu entry in a submenu.
E.g. Avira Antivir adds an entry in the context menu "Scan selected files with antivir". I have tried to see what parameters are used to start the program with Process Monitor. In case of Malwarebytes I succeeded in this way. But with antivir it's impossible for me.
Before the program is started, the file gets magically copied to c:\..., renamed and then antivir is started with some parameters and the new path to the file. I can't figure out how the file copying/renaming is triggered and so I cannot recreate the context menu entry.
I would either like to have a way to move the entry that is allready there or find out what is happening, so that I can work the rest out myself.
I think there is some kind of deeper integration into the context menu happening here, than is commonly seen. Also the registry entries for avira can't give me a clue as to what is happening. I would really like to have my security programs such as avira and malwarebytes bundled in a submenu, because they are seldomly used, but still useful in some cases.
Maybe what I ask for is impossible, but if it is I would really like for someone to end my journey on this one.
VG
^^ I'm not sure but you can try 3rd party software to re-arrange context menu options:
http://www.askvg.com/filemenu-tools-free-utility-to-customize-context-menu-in-windows-xp-vista-and-7/
http://www.askvg.com/7plus-a-free-tool-to-tweak-windows-vista-and-7-explorer-add-hotkeys-tabs-context-menu-entries/
bry
how to disable shift + right click context menu . as in move all those options to just plain right click. then i can do my own flyouts and cascading menues. BEACAUSE I DONT WANT TO HAVE TO STRECH MILES FOR 1 DAM KEYBOARD BUTTON so silly !!!! as i am a mouse only\mostly person , thankyou ...............