在IDE

2013-09-01 36 views
0
检测Visual Studio版本

我需要检测其中的Visual Studio版本正在运行时,它是通过IDE运行我的项目,通过使用,我想搞清楚的Visual Studio的路径就像我的文档: C:\ Users \ xxx \ Documents \ Visual Studio 2012在IDE

有什么C#方法可以帮助我使用VS2012吗?

在此先感谢

+0

你为什么要这样做?什么是最终目标? –

回答

0

你可以得到的Visual Studio Edition与下面的代码:

public static class EnvInfo 
    { 
     public static string GetEdition() 
     { 
     EnvDTE.DTE dte =(EnvDTE.DTE)System.Runtime.InteropServices.Marshal.GetActiveObject("VisualStudio.DTE"); 
     return dte.Edition; 
     } 
    } 

注:

一定要运行此代码之前,包括EnvDTE.dll

+0

亲爱的Bhushan非常感谢您的有用答复,当我运行上面的代码时,大部分时间我得到运行时错误:“调用被拒绝与被调用者(HRResult异常:....),有没有其他我必须注意的事情 – Albert

+0

@Albert这是因为你正试图访问你正在运行的实例的信息... –

+0

我已经准备好了一个控制,其他开发人员想要使用它会有同样的问题,我只需要从IDE.please通知项目运行项目时才需要。 – Albert

0

不涉及到Visual Studio,但这里是检测位置的可执行文件所在的目录代码:

string path = Path.GetDirectoryName(Process.GetCurrentProcess().MainModule.FileName); 

然后,您可以检查,如果路径中包含字符串“ Visual Studio“并相应采取行动。