.net 如何在Microsoft.Build.Evaluation.Project对象中找到其他IncludeDirectory?

.net 如何在Microsoft.Build.Evaluation.Project对象中找到其他IncludeDirectory?,.net,visual-c++,msbuild,.net,Visual C++,Msbuild,我需要以编程方式更新VS 2010.vcxproj文件中反序列化的附加IncludeDirectories。这些定义存储在Microsoft.Build.Evaluation.Project对象中的什么位置?我有一些例子,但似乎无法得到一个规范的答案。这是作为ProjectItem实例子项的元数据 项目项目: 元数据是一种属性: 但为什么要在运行时修改它呢?听起来你好像做错了什么。答案在对象的Xml字段下的ItemDefinitionGroups下。这些信息在别处找不到。数据是可编辑的,至少

我需要以编程方式更新VS 2010
.vcxproj
文件中反序列化的
附加IncludeDirectories
。这些定义存储在Microsoft.Build.Evaluation.Project对象中的什么位置?我有一些例子,但似乎无法得到一个规范的答案。

这是作为ProjectItem实例子项的元数据

项目项目:

元数据是一种属性:


但为什么要在运行时修改它呢?听起来你好像做错了什么。

答案在对象的
Xml
字段下的
ItemDefinitionGroups
下。这些信息在别处找不到。数据是可编辑的,至少在我需要的程度上是可编辑的,因此当将对象序列化到磁盘时,可以反映更改。
在任何地方都没有关于此功能的文档。

在一百万年内,您不应该在构建过程中修改额外的includedirectory。你为什么这么做?我不是在运行时修改它。我需要重新组织一个庞大的目录结构。我正在编写的工具根据已知的重组更改更新该目录结构中项目内的所有引用。很好。欢迎来到俱乐部。我去过那里并做了那件事。但请记住,您可以在“属性表”(旧名称)中设置该属性一次,然后将该属性集导入到所有项目中。例如: