获取Visual Studio 2010扩展中的项目/引用列表

时间:2012-05-13 12:03:53

标签: visual-studio-2010 visual-studio-extensions

我正在创建一个Visual Studio 2010扩展包(Microsoft.VisualStudio.Shell.Package),需要分析所有项目和项目的引用。我认为这是通过服务完成的(例如Package.GetService(typeof(IMenuCommandService)))。我需要的是包含获取项目列表和这些项目参考的功能的接口。此外,我们非常感谢任何关于在哪里找到包含visual studio中可用接口的引用的建议。

请注意,我已经看到多个人尝试使用宏中的DTE做类似的事情。那不是我想要做的。我正在尝试从Visual Studio扩展中执行相同的操作。

1 个答案:

答案 0 :(得分:7)

因此,即使您将此作为扩展的一部分,您仍然需要使用DTE API来获取所需的所有信息。它可能看起来倒退,但这就是它的工作原理。您应该通过(EnvDTE.DTE)Package.GetService(typeof(SDTE))获取DTE对象。获得EnvDTE.Project后,访问它的Object成员并将其转换为VSLangProj.VSProject(如果它是C#或VB项目)。这有您需要的参考信息。