ApexSQL Add-ins and Spotlight-Tuning Pack Conflict in SSMS 18

Applies to

ApexSQL add-ins

Symptoms

After installing Spotlight Extensions – Tuning Pack into SQL Server Management Studio 18 (SSMS 18) on a system that already has any ApexSQL add-in installed, the Tuning Pack menu will not be shown in SSMS 18 main menu.

The same problem occurs if Spotlight Tuning Pack was installed before any ApexSQL add-ins.

Problem

Right after SSMS 18 is launched, this Microsoft .NET Framework error message may appear:

Unhandled exception has occurred in a component in your application. If you click Continue, the application will ignore this error and attempt to continue.

The invocation of the constructor on type

‘Quest.Plugin.SQLServerDiscovery.Controls.DevExpressGridControl’ that matches the specified binding constrains threw an exception.

Unhandled exception error message in SSMS 18

By clicking either the Continue or Close (x) button on the Microsoft .NET Framework dialog, you can connect normally to SQL Server, but the Spotlight Tuning Pack menu will not be shown in the SSMS main menu:

SSMS 18 without Spotlight - Tuning Pack menu

Solution

By default, Spotlight Extensions Tuning Pack is installed in the following location:

C:\Program Files (x86)\Microsoft SQL Server Management Studio 18\Extensions

default installation path for SpotlightExtensions

From this location, cut (move) the Spotlight Extensions folder to this location:

C:\Program Files (x86)\Microsoft SQL Server Management Studio 18\Common7\IDE\Extensions

SpotlightExtensions new path

Note: Before moving the SpotlightExtensions folder to the new location, make sure to close SSMS 18.

After moving the SpotlightExtensions folder, go to this location:

C:\Program Files (x86)\Microsoft SQL Server Management Studio 18\Common7\IDE

Find the Ssms.exe.config file and open it in any text editor (e.g., Notepad++):

Open Ssms.exe.config in Notepad++

In the configuration file, find the line that contains code from below:

<probing privatePath=”Extensions\Application;PublicAssemblies;PrivateAssemblies;CommonExtensions\Platform;CommonExtensions\Microsoft\Editor;CommonExtensions\Platform\Debugger;Mashup”/>

Ssms.exe.config file in Notepad++

Once you locate the line, insert the following text at the end of the probing privatePath line: ;Extensions\SpotlightExtensions

<probing privatePath=”Extensions\Application;PublicAssemblies;PrivateAssemblies;CommonExtensions\Platform;CommonExtensions\Microsoft\Editor;CommonExtensions\Platform\Debugger;Mashup;Extensions\SpotlightExtensions”/>

It should look like this:

Adding the Extensions\SpotlightExtensions text  in Ssms.exe.config

Now, after launching SSMS 18, the Spotlight Tuning Pack menu should appear in the SSMS 18 main menu:

SSMS 18 with Spotlight menu

Uninstalling

When uninstalling Spotlight Extensions for SQL Server Management Studio, please remove the SpotlightExtensions folder from this location:

C:\Program Files (x86)\Microsoft SQL Server Management Studio 18\Common7\IDE\Extensions

Remove the SpotlightExtensions folder new path

Otherwise, the The ‘SpotX_Entrance’ package did not load correctly warning message may appear:

The ‘SpotX_Entrance’  warning message appears if not remove the SpotlightExtensions folder from the new path after uninstalling the  Spotlight Extensions for SQL Server Management Studio

Note: This issue is fixed in the Spotlight Extensions 7.1.9.57 version and higher