Replacing EnvDTE in Visual Studio 2012

So far, I have successfully used EnvDTE to manage the Visual Studio Toolbox.

There are custom DLLs for working with different versions of Visual Studio:

EnvDTE.dll - general automation of VS (possibly works on all versions)

EnvDTE80.dll - for working with VS 2005

EnvDTE90.dll - for working with VS 2008

EnvDTE100.dll - for working with VS 2010

However, for VS 2012 there is no EnvDTE110. Does this mean that this is a different way to automate VS than using these COM wrapper libraries?

If so, how, for example, to work with VS 2012 and Toolbox projects remotely differently than using EnvDTE?

+8
visual-studio visual-studio-2012 envdte
source share
2 answers

Although in

only envdte100.dll exists
c:\Program Files (x86)\Common Files\microsoft shared\MSEnv\PublicAssemblies\ 

The following works for Visual Studio 2012:

 Type typeDTE = typeDTE = Type.GetTypeFromProgID("VisualStudio.DTE.11.0"); DTE objDTE = (DTE)Activator.CreateInstance(typeDTE, true); 
+6
source share

I think you do not understand how the version of EnvDTE works.

Visual Studio backward compatible with every version of EnvDTE. But if a new version of Visual Studio requires or provides additional extensibility, MS releases a newer version of EnvDTE, which provides it through its interfaces.

So, for example, you could use EnvDTE80 classes to interact with Visual Studio 2012. You are just limited by the extensibility available in Visual Studio 2005. Or you can use EnvDTE90 and be limited to what was available when Visual Studio 2008 was released.

If a newer version of EnvDTE has not been released with the latest VS SDK, you are limited to EnvDTE100.

+14
source share

All Articles