Visual Studio宏以选择启动项目

时间:2010-07-21 16:33:46

标签: visual-studio macros

在MSVC中,若干操作(例如Menu:Build:Build)对当前选定的Solution Project具有上下文敏感性。但是,如果您一直在导航解决方案资源管理器,那么该项目通常会更改。

我想编写一个宏来查找指定为“启动项目”的项目,并选择它以使其处于活动状态。我没有找到合适的DTE电话。

2 个答案:

答案 0 :(得分:4)

我的主要目标是构建启动项目,我找到了解决方案:

Public Sub BuildStartupProject()
    Dim sb As SolutionBuild = DTE.Solution.SolutionBuild
    Dim projName As String = sb.StartupProjects(0)
    DTE.ExecuteCommand("View.Output")
    sb.BuildProject(sb.ActiveConfiguration.Name, projName, False)
End Sub

来自Chromium project wiki

答案 1 :(得分:1)

这是应该让你开始的东西,我还没有验证当项目嵌套在文件夹中时它是否会起作用。

Sub SetStartupProjectasActive()
    Dim solutionName As String = DTE.Solution.Properties.Item("Name").Value
    Dim startupProject As String = DTE.Solution.Properties.Item("StartupProject").Value
    Dim fullItemName As String = String.Format("{0}\{1}", solutionName, startupProject)

    DTE.Windows.Item(Constants.vsWindowKindSolutionExplorer).Activate()
    DTE.ActiveWindow.Object.GetItem(fullItemName).Select(vsUISelectionType.vsUISelectionTypeSelect)
End Sub