How to Add Custom Shortcuts to the Windows 11 or 10 Context Menu
Add new options that appear when you right click.
The Windows context menu is always right at your finger tips; it appears when you right click on files, folders, icons or just the desktop. You can use it to check the properties of an object, open a file in a particular program or quickly get to a menu or app.
Many applications add themselves to the context menu, but why let them have all the fun? With a few simple registry tweaks, you can add custom shortcuts to the context menu in Windows 11 or Windows 10. Below, I'll show you how to add custom entries to the default context menu you see when you right click on the desktop or to the menus that appear when you right click on particular file types (or all file types).
You can add a lot of different things to the Windows context menu: a shortcut to launch a program, a shortcut to open a web page or a command to open the file you right clicked in a particular app.
If you're running Windows 11, the first thing you should do, though, is make sure that you're seeing the full context menu and get rid of the annoying show "Show more options" item that you have to click to see all your choices. See our article on how to get full context menus in Windows 11, or scroll down to the bottom of this article where we also have the steps.
How to Add a Program Shortcut to the Windows Context Menu
Follow the steps below to add an application shortcut to the Windows 11 or 10 context menu you get when you right click on the desktop or on a folder.
1. Open the registry editor and navigate to HKEY_CLASSES_ROOT\Directory\Background\shell. You can open the registry editor by searching for "regedit" in Windows search.
2. Create a key under shell with the name of the application (ex: Chrome). To create a new key, just right click in the right window pane and select New->Key. Then rename the key to what you want it to be called.
Stay On the Cutting Edge: Get the Tom's Hardware Newsletter
Get Tom's Hardware's best news and in-depth reviews, straight to your inbox.
3. Within the new key you created, add a String Value and name it Icon. You can add a String value by right clicking and selecting New->String Value. You can skip this step and the next step if you don't want an icon next to the entry.
4. Open the Icon string for editing and enter either the path to the executable (.exe) file for your program or to a custom .ico file (if you want a custom icon). Be sure to put the path in quotes and include the pull path including the drive letter. The path to the executable was "C:\Program Files\Google\Chrome\Application\chrome.exe" for Chrome on my PC.
5. Create another key called Command (with a capital C) under the key you previously created (ex: Chrome).
6. Open the (Default) value in Command and set it to the full path to the program's executable (ex: "C:\Program Files\Google\Chrome\Application\chrome.exe"). This is the same path you used for the icon, but here it designates the file that runs.
7. Close the Registry Editor. If you don't immediately see the change in your context menu, then restart your PC or log out and back in again or restart Windows Explorer from the task manager..
You should now see the new shortcut on the right click menu when you right click on the desktop or within a folder in File Explorer.
How to Make a Context Menu Shortcut to a Website
If you want to make a context menu shortcut that goes straight to your favorite website, it's easy to do that and you can even include that site's favicon. For example, to create a shortcut to Tom's Hardware, follow all the steps above, but:
1. Download the site's favicon and store in a folder on your PC (ex: C:\icons"). You can find the URL of any site's favicon by viewing the source code of any page and grabbing the URL from there.
In the case of Tom's Hardware, our favicon is currently at https://vanilla.futurecdn.net/tomshardware/917220/favicon.ico.
2. Set the Icon to C:\icons\favicon.ico or whatever you saved the favicon to.
3. Set the name (the default value for your key) to something memorable like "Open Tom's Hardware."
4. Set the command to "C:\Program Files\Google\Chrome\Application\chrome.exe" https://www.tomshardware.com or whatever the URL you want to go to is. You can substitute the path to chrome.exe with a path that launches your browser of choice.
You'll now have a site shortcut that looks like this.
How to Add Windows Menus or Built-in Apps to Context Menu
What if you want to add a menu item that opens up the "This PC" window in File Explorer or one that takes you directly to the task manager? How about going straight to the old-school Control Panel?
All of these built-in Windows applications are available, but usually not as .exe files. Instead, they have CLSID numbers and are launched by entering: explorer "shell:::{CLSID}". There are easily three dozen different CLSIDs around and Eleven Forum has a comprehensive list of them.
For example, to open "This PC" (your list of drives), you'd use explorer "shell:::{20D04FE0-3AEA-1069-A2D8-08002B30309D}" as the default value in the command key (see step 6 in the first section of this article).
Here are a few of the most common CLSIDs and .exe paths for built-in Windows apps you may want to add to the context menu.
Built-in App | Launch Path | Header Cell - Column 2 |
---|---|---|
This PC (all drives) | explorer "shell:::{20D04FE0-3AEA-1069-A2D8-08002B30309D}" | Row 0 - Cell 2 |
Removeable Drives Only | explorer "shell:::{F5FB2C77-0E2F-4A16-A381-3E560C68BC83}" | Row 1 - Cell 2 |
Control Panel | explorer "shell:::{5399E694-6CE5-4D6C-8FCE-1D8870FDCBA0}" | Row 2 - Cell 2 |
Downloads Folder | explorer "shell:::{088e3905-0323-4b02-9826-5d99428e115f}" | Row 3 - Cell 2 |
Documents Folder | explorer "shell:::{A8CDFF1C-4878-43be-B5FD-F8091C1C60D0}" | Row 4 - Cell 2 |
Pictures Folder | explorer "shell:::{24ad3ad4-a569-4530-98e1-ab02f9417aa8}" | Row 5 - Cell 2 |
Task Manager | C:\WINDOWS\System32\Taskmgr.exe | Row 6 - Cell 2 |
For built-in Windows apps, you can either have no icon at all, put in a path to a custom icon or choose one of the dozens of icons in Shell32.dll by entering %SystemRoot%\System32\shell32.dll,[ICON NUMBER] as the icon path. To find out the number of the icon you want, you can install NirSoft Icons Extract and use it to scan C:\windows\system32\shell32.dll.
If you do that, you'll see a list of icons with numbers in parenthesis after each.
For "This PC," the best icon is number 15, which is already used for This PC in File Explorer.
How to Add Context Menu Items for a File Type
These instructions show how to add an item to the Windows context menu which appears when you right click on the icon for a particular file type. For example, I created a menu item that reads "Open this Txt File in Chrome" to the context menu for .txt files. It then opens the .txt file for viewing in Chrome. Note that this does not change the default application for that file type.
1. In the registry editor, Navigate to HKEY_CLASSES_ROOT\SystemFileAssociations\[EXT] where [EXT] is the file extension you want. For example, for .txt files, it's HKEY_CLASSES_ROOT\SystemFileAssociations\.txt.
2. Create a new key called "shell" under that.
3. Under "shell," create a key called "mycommand" or anything you want as this name is just for internal use.
4. Set the default value in mycommand to whatever you want the menu text to say. In my case, I'm going to put "Open This Txt file in Chrome."
5. If you want an icon to appear next to the menu item, create a String value called "Icon" and set it to either the path to the executable (for the program icon) or to a custom .ico file if you want a custom icon.
6. Create a key called "command" under the "mycommand" folder.
7. Set the default value in the command key to the executable file path. Be sure to include "%1" after the file path so that it knows to open the file you clicked upon. So, to open my .txt file in chrome, I entered "C:\Program Files\Google\Chrome\Application\chrome.exe" "%1"
8. Close the registry editor and try right clicking on a file with the extension in question. You may need to sign out / sign in again if this doesn't work.
You should now see the custom menu item appear.
How to Add Context Menu Items for All File Types
To add a custom context menu item that will appear on any file type, but not when you right click on the desktop, folders or other non-files, follow these steps.
1. In regedit, navigate to HKEY_CLASSES_ROOT\*\shell.
2. Create a key underneath shell called "mycommand" or anything you want as long as it doesn't have spaces in the name.
3. Set the default value in mycommand to the menu text you wish to appear. I'll go with "Open this File in Chrome."
4. Create a string value called Icon and set it. Use the executable path (ex "C:\Program Files\Google\Chrome\Application\chrome.exe") if you want to use the program's default icon. However, you can also set a path to any .ico file and it will use that icon.
5. Create a key called "command" under "mycommand."
6. Set the default value in command to the executable path (in quotes) with "%1" after it. So to open a file in chrome, I entered "C:\Program Files\Google\Chrome\Application\chrome.exe" "%1"
7. Close Regedit and try right-clicking on any file.
You should see your new menu item on the right-click menu, though possibly not if you have assigned a custom context menu item to that particular file type already. If you don't see it, try logging out and back in again.
How to Show the Full Context Menu in Windows 11
By default, Windows 11 does something extremely annoying; it only shows a few basic options on the context menu and then forces you to click a "Show more options" item in order to see the full menu. Follow the directions below to make Windows 11 show the complete context menu at all times.
1. Open the registry editor and navigate to HKEY_CURRENT_USER\SOFTWARE\CLASSES\CLSID\
2. Create a new registry key called {86ca1aa0-34aa-4e8b-a509-50c905bae2a2} under CLSID.
3. Create another key under that called InprocServer32.
4. Edit the default string in InprocServer32 so that it's blank. Don't even leave a space.
5. Close the registry editor and reboot the computer.
Now you should have a full context menu.
-
RitiFamily Avram, great stuff... Thank you for writing this article. I appreciate how in-depth you took it! Much appreciated...Reply -
froggx i'd been curious about this for a while. good read.Reply
i'd spent the last week looking into a reasonable way to do this and haven't had much luck.Rabohinf said:New story idea: How to remove useless context menu items. -
t3t4 I've often wondered how to do this but never got around to looking it up. Now I don't have to since I print the page as a .pdf file.Reply
Thanks for the info, Tom.
Cheers 🍻 -
jibal Why do these articles all say to log out or reboot when you can simply restart Windows Explorer from the Task Manager? Also, you don't need to exit RegEdit ... changes happen immediately.Reply