SSMS Object Explorer / VS Server Explorer Won't Load (Fix found)

Happened across this glorious error this evening.

Somehow my IServiceProvider COM Object was unregistered from the system through the course of several windows updates, and application uninstalls.

Error:
Unable to cast COM object of type 'System.__ComObject' to interface type 'Microsoft.VisualStudio.OLE.Interop.IServiceProvider'. This operation failed because the QueryInterface call on the COM component for the interface with IID '{6D5140C1-7436-11CE-8034-00AA006009FA}' failed due to the following error: No such interface supported (Exception from HRESULT: 0x80004002 (E_NOINTERFACE)).

Luckily, the guys/gals over on MSDN Social found the fix!

Steps:

  1. Open notepad.
  2. Copy everything between the "Copy" tags: (From Nick Buse)

    <COPY>Windows Registry Editor Version 5.00

    [HKEY_CLASSES_ROOT\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}]
    @="IServiceProvider"

    [HKEY_CLASSES_ROOT\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}\NumMethods]
    @="4"

    [HKEY_CLASSES_ROOT\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}\ProxyStubClsid32]
    @="{B8DA6310-E19B-11D0-933C-00A0C90DCAA9}"

    [HKEY_CURRENT_USER\Software\Classes\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}]
    @="IServiceProvider"

    [HKEY_CURRENT_USER\Software\Classes\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}\NumMethods]
    @="4"

    [HKEY_CURRENT_USER\Software\Classes\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}\ProxyStubClsid32]
    @="{B8DA6310-E19B-11D0-933C-00A0C90DCAA9}"

    [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}]
    @="IServiceProvider"

    [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}\NumMethods]
    @="4"

    [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}\ProxyStubClsid32]
    @="{B8DA6310-E19B-11D0-933C-00A0C90DCAA9}"</COPY>
     
  3. Paste the text into notepad.
  4. Save as a ".reg" file. (Example: IServiceProvider_COM_fix.reg)
  5. Right click on the saved file in explorer, and click Merge.
  6. Agree to prompt, and you're done!
  7. Be very thankful that you didn't uninstall and reinstall SSMS and/or VS like I was about to! PHEW!