<Target Name="Build">
...
<MSBuild
Projects="$(MSBuildProjectFile)"
Condition="'@(FilesToCompile)' != ''"
Targets="buildcpp"
Properties="CPPFILE=%(FilesToCompile.FullPath);OBJFILE=$(ObjectFolder)\%(FilesToCompile.Filename).doj;IncludeDirs=$(IncludeDirs)"
/>
FilesToCompile
はすべて.cpp
ファイルのItemGroup
です。MSBuildのは - ファイルオーバータスクMSBuildのループをどうするか
ビルドログを見ると、CPPFILE
の各ファイルに対して実行されているターゲットbuildcpp
が表示されます。
私はそれが仕事MSBuild
がCPPFILE
の各値に対して実行されるものを要素<MSBuild>
またはMSBuild
スキーマ原因のルール、私は論理的に起こるしたいが、私の質問が何であるかであることを理解?
簡潔に言えば、ドキュメントのどこにそれが起こるかが書かれていますか?
MSBuild
ターゲットを1回ずつ呼び出すのではなく、ItemGroup
全体を1回渡します。
@ HansPassantだから、 'ItemGroup'全体を一度だけ渡したいのであれば、まずそれを' Property'に割り当ててから '
Adrian
@ HansPassantアイテムごとに1つのタスクコールではなく、一度に 'ItemGroup'を一度に渡したいと思います。 – Adrian
https://msdn.microsoft.com/en-us/library/ms171473.aspx?f=255&MSPPError=-2147217396 – stijn