The correct way to uninstall Visual Studio packages (extensions)
So it turns out I was a bit premature when I declared victory in my last post, and although I was able to start Studio several times without receiving that pop-up error warning it started recurring today. I’ll go into detail, but the short version is, “Read error dialogs” and “the internet is your friend.”
Thanks to this post on the JetBrains issue tracking web site I learned that those registry entries I so cavalierly deleted are regenerated on startup from the package manifests dropped in the following location(s):
- C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\Extensions
- C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\Extensions
Buried in those folders (depending on which version of Studio concerns you) are extension-specific folders containing a pair of files as described here:
- extension.vsixmanifest
- vspackage.pkgdef
Here is a great pair of resources on Visual Studio Extensions (VSIX) and how they’re loaded that explain more about how all this works:
- Bootstrapping of VS packages and VSIX extensions in VS2010
- How VSIX extensions are discovered and loaded in VS 2010
So removing the registry entries as I described is not enough; you also have to remove the manifest and package definitions.
Apparently there is a known issue in some of the ReSharper v7.1.25-related Jetbrains tools whereby some of the manifest and package definition files do not get removed properly. Removing them manually seems to do the trick, and the issue appears to have been fixed in ReSharper 7.1.1000 and dotCover 2.2.
Hat tip to Scott Hanselman for encouraging us all to look underneath the covers.