以编程方式在Visual Studio项目文件中添加和编辑目标

问题描述:

我试图以编程方式将以下目标添加到我的Visual Studio项目文件中。以编程方式在Visual Studio项目文件中添加和编辑目标

<Target Name="PostBuildEvent" Condition="'$(PostBuildEvent)'!=''" DependsOnTargets="$(PostBuildEventDependsOn)"> 
     <Exec WorkingDirectory="$(OutDir)" Command="$(PostBuildEvent)" IgnoreExitCode="true" /> 
</Target> 

我敢肯定,IVsBuildPropertyStorageIVsBuildPropertyStorage2将无法​​工作,因为需要一个项目项又名从项目文件中的<ItemGroup>元素的节点。我想要做的是在<ItemGroup>元素之外添加上面的xml。

我想使用Visual Studio SDK来做到这一点,文档&做这件事情的例子似乎缺乏。截至这篇文章的时候,我无法找到一种做法。我想真的很想避免加载项目文件(在这种情况下Test.csproj)作为XDocumentXmlDocument并添加目标元素节点的方式。它看起来很混乱,可能会导致更多的问题。

作为额外的奖励我也想IgnoreOnExit单PostBuildEvent元素,但我敢肯定,这是不可能的PostBuildEvent元素

尝试在Microsoft.Build.Construction命名空间中使用AddTarget方法上ProjectRootElement类。该名称空间用于读取和写入MSBuild文件。

+0

这样做谢谢! – 2010-12-22 19:09:27