71

I have installed Visual Studio Community 2017 RC on Windows 10.
After installing, it added a new context menu when right clicked on any directory.

Visual Studio 2017 RC context menu

I want to remove this option, but can't seem to find it from VS2017 settings.

aniskhan001
  • 1,138
  • 3
  • 13
  • 22
  • 15
    This is one of the dumbest things Microsoft has ever added to the context menu. Seriously, I right-click on my Desktop image, and it wants to know if I want to open this in Visual Studio. Open *what* ?!! Do they think I want to debug my .png image file or something ? – Mike Gledhill Dec 18 '17 at 12:01
  • @MikeGledhill linux programs don't have a solution file (sln) like Windows, so this option is to open linux solutions via VS2017 – magicandre1981 Jan 17 '18 at 17:30
  • Related: [How to remove items from the right click (context) menu in Windows?](https://superuser.com/q/5011/358766) – Stevoisiak Jun 19 '18 at 15:27

6 Answers6

67

This answer is originally from here, and I am just reproducing it here for sake of brevity.

Use the Windows Registry editor to delete two keys:

HKEY_CLASSES_ROOT\Directory\Background\shell\AnyCode
HKEY_CLASSES_ROOT\Directory\shell\AnyCode

You may want to back up your registries before going for a delete operation, just a good practice.

Blaze
  • 773
  • 4
  • 6
  • 4
    Thank you. Unfortunately the answer @magicandre1981 provided wasn't enough for me. I had to do as you suggested and delete. Then it worked. – dgo Mar 05 '18 at 15:41
  • 1
    Thanks, @Blaze. Good that you brief them here. The link is broken now. – mavis Jan 08 '19 at 07:23
  • 1
    Deleting these worked for me as well. – JkAlombro Jun 18 '19 at 01:57
  • 2
    Thanks, this worked for me too. For anyone who might be worried, this will NOT affect VSCODE's item in the context menu. – aderchox Apr 07 '21 at 11:12
44

Run regedit.exe, go to HKEY_CLASSES_ROOT\Directory\Background\shell\AnyCode, take ownership of this key, change the permisions for your account and add a DWORD (32Bit) with the name HideBasedOnVelocityId and set the value to 006698a6 (hex):

enter image description here

When you now do a rightclick the entry is gone:

enter image description here

Delete entry or rename it to ShowBasedOnVelocityId to enable the entry again:

enter image description here

magicandre1981
  • 97,301
  • 30
  • 179
  • 245
21

From Bryson Gibbons on the Microsoft Forums:


Another option, if you don't want to just delete it or can see it being sometimes useful but don't want it cluttering up the context menu, is to move it to the extended context menu (where it is only visible with Shift+Right-click).

Using the Windows Registry editor, add a new string value under each of the following keys, with the name "Extended":

HKEY_CLASSES_ROOT\Directory\Background\shell\AnyCode
HKEY_CLASSES_ROOT\Directory\shell\AnyCode

You should then see the following contents when either of the above registry keys are selected:

Name        Type     Data
(Default)   REG_SZ   @C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\1033\\VSLauncherUI.dll,-1002
Extended    REG_SZ

After doing this you will only see "Open in Visual Studio" on folders/directories when you hold down shift, then right click.

Stevoisiak
  • 13,555
  • 39
  • 101
  • 154
9

You can use ShellMenuView to find this context menu entry and disable it.

  1. Download the program for your OS (32 or 64 bit) and run the shmnview.exe executable.
  2. Find in the list something that has to do with Visual Basics and seems to be this entry. (You can sort the list by File Type and look on the entries under with file type Directory)
  3. Right-click that entry and select Disable Selected Items.
Yisroel Tech
  • 9,687
  • 3
  • 23
  • 37
  • this is a comment, but no real answer. Show more details how to remove the entry. – magicandre1981 Feb 13 '17 at 17:11
  • 1
    I explained now in detail how to remove it and not such a crap answer: http://superuser.com/a/1178368/174557 – magicandre1981 Feb 13 '17 at 17:27
  • 1
    @magicandre1981, I added the details on how to do it. (of course, your answer might still be better, depends on the user who asked it.) – Yisroel Tech Feb 13 '17 at 17:30
  • 3
    I tried this software before posting the question. But I was unable to find the right entry from there and came here to ask the community. Thanks for your effort, though. – aniskhan001 Feb 14 '17 at 18:03
  • This answer worked for me - I was able to very easily find the items I wanted to remove and disable them using the ShellMenuView software. Much easier than fiddling around in the registry! – Sean Kearon May 05 '21 at 05:48
  • ShellMenuView runs under admin, which may be not the current user. And it looks that it can't enumerate user entries (HKEY_CURRENT_USER\SOFTWARE\Classes) at all. These may be the reasons why it doesn't show something – Basil Peace Oct 02 '21 at 03:28
6

Based on the answer by @Blaze:

Instead of searching for keys with the registry editor, just copy this into an empty file with a .reg file extension and execute that file to delete the keys.

Windows Registry Editor Version 5.00

[-HKEY_CLASSES_ROOT\Directory\Background\shell\AnyCode]
[-HKEY_CLASSES_ROOT\Directory\shell\AnyCode]
kapex
  • 995
  • 2
  • 12
  • 20
0

None of the solutions worked for me... So I opened the Registry Editor, go to menu Edit > Find... And enter the name you want to find Open in Visual Studio (or simply Visual Studio if you want a broader search)... Click Find Next and keep pressing F3 until you find the desired key...

In my computer, it was found in:

HKEY_CURRENT_USER\Software\Classes\Local Settings\MuiCache\9a3\52C64B7E

There was a value name

@C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\1055\\VSLauncherUI.dll,-1002

with value data

&Open with Visual Studio

So just erase it (but make sure to backup your registry before doing that, just in case)

Girardi
  • 101
  • 3
  • This was the case for me as well, although with the minor difference of it being located in HKEY_CLASSES_ROOT\Local Settings\MuiCache\304\52C64B7E, and the value was "Open in &Visual Studio" – Aemony May 20 '20 at 06:01
  • This removes just the MUI string, but not the actual menu item. It could work if 1) Explorer just ignores incomplete items 2) MUI cache is not repopulated (after, for example, software or Windows update). Since MUI is used, you should search the value you found (@C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\1055\\VSLauncherUI.dll,-1002) in the usual places (proposed in other answers). – Basil Peace Oct 02 '21 at 03:30