2012-11-05 48 views

回答

1

我這樣做只爲C#和VB.NET項目,但它應該是相同的:

var pr = new Microsoft.Build.Evaluation.Project(); 
//Initialize (load from file or whatever)  
pr.AddItem("Folder", YourFoldersPath + @"\"); 
pr.Save() 
+0

謝謝您的答覆。我沒有嘗試使用VC++項目的代碼,因爲我無法確定Project的構造函數正在創建哪個項目,以及哪一個項目是從MSDN文檔加載項目的:P。 我做了一些調查,發現VS不會在.vcxproj和.vcxproj.filter文件中存儲有關包含文件夾的信息。 它只是穿過文件夾的目錄樹並將所有文件添加到項目中。我也做了同樣的事情:) –

2

看看示例宏 - View -> Other Windows -> Macro Explorer。在Samples/AddDirAsSlnFolder中有一個向您展示如何在項目中創建節點並添加文件。這是在VisualBasic中,但它很容易轉化爲C#,一旦你看到這是用來在EnvDTE方法,例如

projItem = currentSlnFolder.Parent.ProjectItems.AddFromFile(file) 

使用EnvDTE.ProjectItems