如何从VSIX获取SSMS版本

时间:2017-09-05 08:26:42

标签: windows visual-studio ssms vsix

我正在使用VSIX为SSMS开发扩展。 在此扩展中,我需要知道我正在运行的SSMS版本。 最好的方法是什么?

2 个答案:

答案 0 :(得分:0)

我在我的SSMS扩展中这样做(对于SSMS 16及更高版本)

        var dte = GetServiceHelper(typeof(EnvDTE.DTE)) as EnvDTE.DTE;
        if (dte == null) return new Version(130, 0, 0, 0);
        if (dte.RegistryRoot.Contains("14.0"))
        {
            return new Version(140, 0, 0, 0);
        }
        return new Version(130, 0, 0, 0);

https://github.com/ErikEJ/SqlCeToolbox/blob/master/src/GUI/SSMSToolbox/Package/SqlCeToolboxPackage.cs#L67

答案 1 :(得分:0)

dte.Version 为SSMS 2016返回 2015.0130 ,为SSMS 17返回 2017.0140