检测Visual Studio 2012版本

问题描述:

如何使用EnvDTE检测Visual Studio 2012 RTM或带有Update 1的Visual Studio 2012是否正在运行? DTE.Version在两种情况下都包含“11.0”。检测Visual Studio 2012版本

+0

检查http://*.com/questions/5089389/how-can-i-check-what-version-edition-of-visual-studio-is-installed-programmatica http://www.mztools.com /articles/2008/MZ2008003.aspx – spajce

+0

最有希望的部分(即HKEY_LOCAL_MACHINE \ Software \ Microsoft \ DevDiv \ VS \ Servicing \注册表项)不适用于VS2010/VS2012。 –

Visual Studio 2010和2012将SP信息放在Wow6432Node子树下 - 例如, HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \微软\ DevDiv \ VS \维修。但是,由于VS 2012更新1是而不是 Service Pack,SP值尚未递增。

可能检测Update 1是否安装的最佳方法是检查您感兴趣的组件的版本。例如对于Visual C++,请检查HKLM \ SOFTWARE \ Wow6432Node \ Microsoft \ DevDiv \ VC \ Servicing \ 11.0 \ CompilerCore \ Version:对于RTM,它是11.0.50727;更新1是11.0.51106。