【问题标题】:Get a list of projects/references within a Visual Studio 2010 Extension获取 Visual Studio 2010 扩展中的项目/引用列表
【发布时间】:2012-05-21 05:49:29
【问题描述】:

我正在创建一个 Visual Studio 2010 扩展包 (Microsoft.VisualStudio.Shell.Package),它需要分析所有项目和这些项目的引用。我会假设这是通过服务完成的(例如Package.GetService(typeof(IMenuCommandService)))。我需要的是包含获取项目列表和这些项目引用的功能的界面。此外,对于在哪里可以找到包含 Visual Studio 中可用界面的参考的任何建议,我们将不胜感激。

请注意,我见过很多人尝试使用宏中的 DTE 来做类似的事情。这不是我想要做的。我正在尝试在 Visual Studio 扩展中做同样的事情。

【问题讨论】:

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


    【解决方案1】:

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

    【讨论】:

    • 这确实有点奇怪,但我已经确认了你的回答。谢谢!
    • 是的,可靠地获取信息的唯一方法是通过 DTE。这很愚蠢而且倒退,但这就是它的工作原理。
    • 有时你不会得到所有项目:stackoverflow.com/questions/33209589/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-04
    • 1970-01-01
    相关资源
    最近更新 更多