This post will show you two methods you can use to remove apps from the right-click menu in Windows 11. The File Explorer on Windows 11 has got a new menu that is shorten by hiding many classic entries. But as long as you install apps, many of them appear even in this new menu. So you may want to hide some of the items.
Advertisеment
With Windows 11, Microsoft has introduced a new menu. It uses a new style with gradients and the fluent design. Its entries are also rearranged: The cut, copy, delete commands have no labels and appear in a dedicated row, and custom classic commands no longer appear in this new menu.
To see the full menu, one has to hold the Shift key when right-click the file or folder. But this only applies to the File Explorer app. For third-party file managers, Windows 11 continues to always show the full menu. Finally, interested users can make it always show the full menu even in Explorer.
But if you like the new menu, and have no intention to disable it, you may want to customize it instead by hiding app you don't open from there. Depending on the file type, the number of the associated apps can be huge. Also, some apps like WinRAR, NanaZip, Notepad, Notepad++ and OneDrive appear for all files.
For example, let's right-click an MP3 file in File Explorer. You see several items like Notepad++ (third-party app) and Clipchamp (inbox app).
To add an item to the new right-click menu on Windows 11, the modern app should register a manifests. Such manifests are stored under the C:\Program Files\WindowsApps folder. This includes apps that installed within the Store, as it is the only way to get the item visible in the new context menu. Besides the manifest file (AppxManifest.xml) itself, the app must have an icon and a signature files. Here's a part of the manifest file for the famous and popular Notepad++ editor app.
<Extensions> <desktop4:Extension Category="windows.fileExplorerContextMenus"> <desktop4:FileExplorerContextMenus> <desktop5:ItemType Type="*"> <desktop5:Verb Id="EditWithNotepadPlusPlus" Clsid="E6950302-61F0-4FEB-97DB-855E30D4A991" /> </desktop5:ItemType> </desktop4:FileExplorerContextMenus> </desktop4:Extension> <com:Extension Category="windows.comServer"> <com:ComServer> <com:SurrogateServer DisplayName="Notepad++ Shell Extension"> <com:Class Id="E6950302-61F0-4FEB-97DB-855E30D4A991" Path="NppShell.dll" ThreadingModel="STA"/> </com:SurrogateServer> </com:ComServer> </com:Extension> </Extensions>
The listed Extensions section of the manifest file defines the context menu entries in the File Explorer. It describes the right-click entries for both the new and old menu.
- For the classic/full context menu, the definition is in the <desktop4:Extension Category="windows.fileExplorerContextMenus"> section.
- For the new Windows 11 menu, the item definition is in the <com:Extension Category="windows.comServer"> section. This is what we are looking for.
By looking inside the latest section, we will find <com:Class Id="SOME_GUID" value. By putting this GUID value to the HKCU\Software\Microsoft\Windows\CurrentVersion\Shell Extensions\Blocked Registry key, you will remove the context menu entry.
💡Regular Winaero readers are already familiar with the "Blocked" registry key. We have already used it to remove the "Edit with Notepad" context menu item.
ℹ️ Please keep in mind that an app may have not just one GUID, especially apps that have several context menu entries like OneDrive. So it may have one GUID per right-click item.
Now we have learned enough to start removing apps from the Windows 11 context menu. To illustrate the process, we will remove Clipchamp from the context menu.
Remove An App from Windows 11 Right-Click Menu
To remove apps from context menu in Windows 11, do the following.
- Press Win + X and select Terminal(Admin) from the menu to open it elevated.
- In a PowerShell tab of Terminal, type
Get-ChildItem -Force "C:\Program Files\WindowsApps\*\AppxManifest.xml" | % { $_.FullName }| Out-Host -paging
, and press Enter. You will see a list of all installed modern apps with the full path to their AppxManifest.xml. The output will paused after each screen. - Look for the AppxManifest.xml file related to the app you want to remove from the context menu. Copy its path and open it in any text editor, or in a web browser. E.g. in Notepad, press Ctrl + O and paste the path to the file name box, and click Open.
- Find the com:SurrogateServer section and copy the CLSID (GUID) value from it.
- Now, press Win + R and type regedit in the Run dialog.
- In the Registry editor, navigate to the HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Shell Extensions key, and look for the Blocked subkey.
- If it is missing, then create it: Right-click the Shell Extensions key, and select New > Key. Name it Blocked.
- Now, right-click the Blocked key, and select New > String value from the menu.
- Paste the copied GUID value into the new value's name box. Surround the GUID value with braces (curly brackets), e.g. to get a value like this: {8AB635F8-9A67-4698-AB99-784AD929F3B4}.
- Close the Registry editor and sign out from Windows 11, then sign in back to apply. Alternatively, you can restart the File Explorer process.
You are done! Now the item is hidden in the modern menu.
⚠️ Here are some caveats. Some apps use the same GUID for both the modern and the classic context menu. So when you block such a GUID in the registry, this removes the app from the new shorten menu along with its items from the full classic menu.
To undo the change, simply remove the GUID value from the Blocked subkey, and restart the Explorer shell.
The classic context menu in Windows 11 is the full menu that appears on the screen when you press Shift + F10 on a file or folder, or press and hold the Shift key and right-click it.
The classic context menu in most cases a subkey in under the HKEY_CLASSES_ROOT\*\shell Registry key, where * stands for "all" files. Instead of "*", it can be a specific file extension like HKEY_CLASSES_ROOT\.mp3\shell, or a file type descriptor, like HKEY_CLASSES_ROOT\mp3file\shell.
Regardless of the location, you can hide any such entry by adding an empty ProgrammaticAccessOnly string value to the command registry key. We already reviewed this value multiple times here on Winaero. It works not only for third party apps but for default Explorer commands. For example, you can use this method to hide the Add to Favorites item from the context menu.
Finally, Winaero Tweaker's "Remove default items" option mostly uses this "ProgrammaticAccessOnly" trick.
To illustrate the process, we will remove "Preview" from the menu of REG files that is added by PowerToys.
How to Remove Apps from Classic Context Menu
- Right-click the Start button and select Run from the menu.
- Enter
regedit
in the Run dialog and press Enter. - Now, navigate to the key that contains the app item. In our case it is
HKEY_CURRENT_USER\Software\Classes\regfile\shell\preview
. - Right-click the
play
key on the left and select New > String value from the menu. - Name the new value as ProgrammaticAccessOnly, and hit Enter. Keep its value data unset (empty).
Congrats, the context menu entry is now hidden.
At any moment later, you can remove the ProgrammaticAccessOnly value from the key where you created it in the Registry to restore the removed right-click command.
ℹ️ The ProgrammaticAccessOnly option in the Registry is a convenient way to customize the context menu in Windows. It hides the entry from the user's view without interfering with app access to it.
The shellex registry key
Our guide wouldn't be complete without mentioning this Registry key. Similarly to the shell key, ShellEx may exist for all and for specific file types.
Context menu entries listed there have a GUID, which looks pretty similar to the ones Store apps use. To remove such an entry, you need to add the GUID for the specific command as a string value name to the HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Shell Extensions\Blocked
key which we reviewed in the beginning of this post.
In the screenshot below, you see the GUID for the 7-Zip archiver, which is {23170F69-40C1-278A-1000-000100020000}
.
So, to remove it from the context menu, you need to create a new string value {23170F69-40C1-278A-1000-000100020000}
under the HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Shell Extensions\Blocked
key, and then restart the Explorer shell.
Obviously, that's not the most convenient way to remove context menu commands. In case of the classic menus and the ShellEx commands, it is better to use the ShellExView freeware by NirSoft, which lists such items and allows disabling them with one click. It also allows disabling several items by one go.
Now you know enough to remove almost everything you don't need from the right-click of File Explorer.
Support us
Winaero greatly relies on your support. You can help the site keep bringing you interesting and useful content and software by using these options:
If you like this article, please share it using the buttons below. It won't take a lot from you, but it will help us grow. Thanks for your support!
Advertisеment