Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Při sestavování projektů je často nutné nastavit možnosti sestavení pomocí informací, které nejsou v souboru projektu nebo soubory, které tvoří váš projekt. Tyto informace jsou obvykle uložené v proměnných prostředí.
Poznámka:
Nástroj MSBuild považuje proměnné prostředí za důvěryhodné vstupy. Mohou způsobit, že nástroj MSBuild načte logiku sestavení, jako jsou úlohy, .targets nebo .props soubory z uživatelsky definovaných umístění nebo změní průběh sestavení.
Referenční proměnné prostředí
Všechny proměnné prostředí, které jsou platnými názvy vlastností NÁSTROJE MSBuild, jsou k dispozici pro soubor projektu MSBuild jako vlastnosti. Platné názvy vlastností jsou popsány ve vlastnostech nástroje MSBuild. Například proměnné prostředí, které začínají číslem, nejsou v nástroji MSBuild k dispozici.
Poznámka:
Pokud soubor projektu obsahuje explicitní definici vlastnosti, která má stejný název jako proměnná prostředí, vlastnost v souboru projektu přepíše hodnotu proměnné prostředí.
Použití proměnné prostředí v projektu MSBuild
Na proměnnou prostředí se odkazuje stejným způsobem jako proměnná deklarovaná v souboru projektu. Například následující kód odkazuje na proměnnou prostředí BIN_PATH:
<FinalOutput>$(BIN_PATH)\MyAssembly.dll</FinalOutput>Atribut můžete použít
Conditionk zadání výchozí hodnoty vlastnosti, pokud proměnná prostředí nebyla nastavena.
Zadání výchozí hodnoty vlastnosti
ConditionPomocí atributu u vlastnosti nastavte hodnotu pouze v případě, že vlastnost nemá žádnou hodnotu. Například následující kód nastavíToolsPathvlastnost na c:\tools pouze v případěToolsPath, že proměnná prostředí není nastavená:<ToolsPath Condition="'$(TOOLSPATH)' == ''">c:\tools</ToolsPath>Poznámka:
V názvech vlastností se nerozlišují malá a velká písmena, takže na
$(ToolsPath)$(TOOLSPATH)stejnou vlastnost nebo proměnnou prostředí odkazují.
Příklad
Následující soubor projektu používá proměnné prostředí k určení umístění adresářů.
<Project DefaultTargets="FakeBuild">
<PropertyGroup>
<FinalOutput>$(BIN_PATH)\myassembly.dll</FinalOutput>
<ToolsPath Condition=" '$(ToolsPath)' == '' ">
C:\Tools
</ToolsPath>
</PropertyGroup>
<Target Name="FakeBuild">
<Message Text="Building $(FinalOutput) using the tools at $(ToolsPath)..."/>
</Target>
</Project>