Visual Studio宏选择启动项目。

3
在MSVC中,一些操作(例如"菜单:构建:构建")会根据当前选择的解决方案项目而有所不同。但是,如果您一直在导航解决方案资源管理器,则该项目通常会更改。
我想编写一个宏,查找指定为“启动项目”的项目,并将其选中以使其处于活动状态。然而,我尚未找到适当的DTE调用方法。
2个回答

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项目维基中得知,只构建启动项目。

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

1
谢谢,但是对DTE.ActiveWindow.Object.GetItem的调用失败了,该对象上没有“GetItem”。 - Vincent Scheib

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接