「VC PlusPlus:MSBuild バッチ処理変数」の版間の差分
編集の要約なし |
(→概要) |
||
29行目: | 29行目: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
出力結果 | |||
この時、実は%(Element)だけではなく、%(Identity)というものもBatchの中設定されていてIncludeという要素の値に対応しています。%(Element)がen-USを示す内容のときだけConditionの中で示された比較が成立し、%(ConditionEnUSBatch) | <syntaxhighlight lang="text"> | ||
Batch = en-US;ja-JP | |||
</syntaxhighlight> | |||
この時、実は%(Element)だけではなく、%(Identity)というものもBatchの中設定されていてIncludeという要素の値に対応しています。%(Element)がen-USを示す内容のときだけConditionの中で示された比較が成立し、%(ConditionEnUSBatch)もBatchの中にできていて、以下のようにして出力することができます。 | |||
40行目: | 46行目: | ||
</Batch> | </Batch> | ||
</ItemGroup> | </ItemGroup> | ||
<Message Text="Batch = @(Batch->'%(Element), Identity = %(Identity), %( | <Message Text="Batch = @(Batch->'%(Element), Identity = %(Identity), ConditionEnUSBatch = %(ConditionEnUSBatch)')" Importance="High" /> | ||
</Target> | </Target> | ||
</syntaxhighlight> | |||
出力結果 | |||
<syntaxhighlight lang="text"> | |||
Batch = en-US;ja-JP | |||
</syntaxhighlight> | </syntaxhighlight> | ||
2024年2月9日 (金) 21:15時点における版
概要
バッチ処理は%(Batch)のように記述する変数です。
例えば、以下のように書いた<ItemGroup>~</ItemGroup>があったとしたら
<ItemGroup>
<Batch Include="1" Element="en-US" />
<Batch Include="2" Element="ja-JP" />
</ItemGroup>
%(Element)というバッチ処理がアイテムグループBatchの中に設定されたことになり、Batchの中のバッチとして扱う範囲の呼び出しができます。例えば以下のような使い方ができます。
<Target Name="BatchTarget">
<ItemGroup>
<Batch Condition=" '%(Element)' == 'en-US' ">
<ConditionEnUSBatch>true</ConditionEnUSBatch>
</Batch>
</ItemGroup>
<Message Text="Batch = @(Batch->'%(Element)')" Importance="High" />
</Target>
出力結果
Batch = en-US;ja-JP
この時、実は%(Element)だけではなく、%(Identity)というものもBatchの中設定されていてIncludeという要素の値に対応しています。%(Element)がen-USを示す内容のときだけConditionの中で示された比較が成立し、%(ConditionEnUSBatch)もBatchの中にできていて、以下のようにして出力することができます。
<Target Name="BatchTarget">
<ItemGroup>
<Batch Condition=" '%(Element)' == 'en-US' ">
<ConditionEnUSBatch>true</ConditionEnUSBatch>
</Batch>
</ItemGroup>
<Message Text="Batch = @(Batch->'%(Element), Identity = %(Identity), ConditionEnUSBatch = %(ConditionEnUSBatch)')" Importance="High" />
</Target>
出力結果
Batch = en-US;ja-JP
と表現できることになります。