VS 2010+扩展:为项目添加过滤器

时间:2012-11-02 10:52:49

标签: visual-studio-2010 vs-extensibility

我正在开发VS扩展,它必须通过Filters重建指定目录的树结构,并将该目录中的现有文件添加到适当的过滤器。

如何通过代码将过滤器和现有文件添加到项目中?

2 个答案:

答案 0 :(得分:0)

通常VS 2010有一个单独的过滤器文件:YourProject.vcxproj.filters。 您可以编写脚本以在此文件中添加所需的内容。但是我不知道一切都会好起来没有问题。

答案 1 :(得分:0)

我找到了以下解决方案:

using Microsoft.VisualStudio.VCProjectEngine;
using Microsoft.VisualStudio.Shell.Interop;
//...
EnvDTE.DTE dte = (EnvDTE.DTE)Microsoft.VisualStudio.Shell.Package.GetGlobalService(typeof(SDTE));
VCProject prj = (VCProject)dte.Solution.Projects.Item(1).Object;
VCFilter filter = prj.AddFilter("Custom Filter");
filter.AddFile("D:\\path\\File.h");
prj.Save();

此外,您还需要添加对Microsoft.VisualStudio.VCProjectEngine的引用。