I spent a couple of hours to learn how to write add-ins for SQL Server Management Studio (SSMS). Microsoft never officially supported add-ins in SSMS but Redgate created a framework to help doing it hiding a lot of complexity. The nice thing is that this framework has being made available to everyone and it can be used to create add-ins for all versions of SSMS up to SSMS 2014 (SSMS 2016 finally add support for extensions as it is based on Visual Studio 2015 Isolated Shell even if I can’t find documentation on it yet).
You can find documentation on the SIP Framework at the following address:
You can follow the instructions very easily and in a matter of minutes you will be able to get the sample add-in up and running in your SSMS. Debugging it from Visual Studio is also incredibly simple to do (and you can also edit and continue!). The idea is pretty simple, you install the framework, you add a registry key that points to your add-in dll and when you open SSMS the add-in will load.
The sample project really helped me to quickly understand how to add menu bars, toolbar buttons, menu items in the object explorer and opening query windows. There is no much information on the Internet on how to actually interact and managed the status of SSMS. I think I will learn more over time but I suspect that most of the job consist of doing some reverse engineering of the API and use of reflection. This is an article that go a bit deeper: The art and science of creating SSMS 2012 add-ins.
Redgate products are using this SIP Framework under the covers and there is a list of add-ins available from Redgate and third party companies at the following address http://www.red-gate.com/products/sql-development/add-ins