如何在VS包项目中获取DTE对象实例?

时间:2013-09-30 05:45:01

标签: c# visual-studio-2012 visual-studio-addins visual-studio-package

如何在VS包项目中获取DTE实例?因为application被作为onConnection方法的参数传递,所以在addin项目中它是直截了当的,但目前还不清楚如何在包中获取它。

2 个答案:

答案 0 :(得分:3)

从您的主要包类:

EnvDTE80.DTE2 dte = this.GetService(typeof(Microsoft.VisualStudio.Shell.Interop.SDTE)) as EnvDTE80.DTE2;

答案 1 :(得分:0)

如果shell未完全初始化,则可以获取获取SDTE服务的null实例。请参阅此代码示例中的处理方法:

HOWTO: Get the EnvDTE.DTE instance from a package