2012-10-26 28 views
1

我知道我可以使用宏來遍歷解決方案的項目(more or less)。如何使用VS宏訪問SolutionFolders中的項目?

但我的SLN的頂級包含五個解決方案文件夾。我只獲得這五個文件夾,但不是他們的條目。

我猜Project對象的Kind可以告訴我它是一個真正的項目還是一個文件夾。但我找不到任何參考如何找出答案。


編輯:
我知道,只有一個解決方案。 「解決方案文件夾」是指在解決方案中使用解決方案資源管理器創建的那些文件夾→右鍵解決方案→添加→新解決方案文件夾。這將創建一個新的邏輯文件夾,讓您有機會在子文件夾中組織解決方案的項目。

+0

「解決方案文件夾」並不意味着什麼,只有一個解決方案。 –

+0

是的,我知道。查看更新的問題。 – eckes

回答

1

這會給你一個想法

Sub ListSolutionFolders() 
     Dim solutionFolder As Project 
     Dim solutionFolders As Projects 
     Dim name As String 
     Dim type As String 
     Dim projects As ProjectItems 
     Dim project As ProjectItem 

     solutionFolders = DTE.Solution.Projects 
     For Each solutionFolder In solutionFolders 
      name = solutionFolder.Name 
      projects = solutionFolder.ProjectItems 

      For Each project In projects 
       If Not project.SubProject.Kind Is Nothing Then 
        'this is a real project 
        type = project.SubProject.Kind 
       Else 
        'Not a project 
       End If 
      Next 
     Next 
    End Sub 

拿筆記的類型,它是一個GUID,你看看這個鏈接是什麼意思 http://msdn.microsoft.com/en-us/library/hb23x61k%28v=vs.80%29.aspx 其他項目類型,如SSRS沒有被列入其中,但也輸出一個GUID

+0

這是完全** **我正在尋找的參考!謝謝! – eckes

相關問題