2012-11-05 29 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