2010-07-21 108 views
3

在MSVC中,幾個操作(如Menu:Build:Build)對當前選定的解決方案項目而言是上下文敏感的。但是,如果您一直在瀏覽解決方案資源管理器,則該項目經常會發生變化Visual Studio宏選擇啓動項目

我想編寫一個宏,查找指定爲「啓動項目」的項目,並選擇它使其處於活動狀態。雖然我沒有找到合適的DTE電話。

回答

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

下面是一些應該讓你開始的東西,我還沒有驗證它是否會在項目嵌套到文件夾中時工作。

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

Thx,但對DTE.ActiveWindow.Object.GetItem的調用失敗,該對象上沒有「GetItem」。 – 2011-10-05 00:00:38

相關問題