Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O MSBuild fornece um conjunto de propriedades predefinidas que armazenam informações sobre o arquivo de projeto e os binários do MSBuild. Essas propriedades são avaliadas da mesma maneira que outras propriedades do MSBuild. Por exemplo, para usar a MSBuildProjectFile propriedade, digite $(MSBuildProjectFile).
O MSBuild usa os valores na tabela a seguir para predefine propriedades reservadas e conhecidas. As propriedades reservadas não podem ser substituídas e a maioria das propriedades conhecidas não deve ser substituída, exceto em cenários avançados.
Propriedades reservadas e conhecidas
A tabela nesta seção mostra as propriedades predefinidas do MSBuild. A coluna de exemplo na tabela refere-se ao arquivo de projeto de exemplo a seguir, considerado localizado C:\Source\Repos\ConsoleApp1\ConsoleApp1e mostra um exemplo dos valores que essas propriedades têm quando acessadas no arquivo de projeto, quando o MSBuild é invocado sem opções de linha de comando especiais.
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp3.1</TargetFramework>
</PropertyGroup>
</Project>
| Propriedade | Reservado ou conhecido | Description | Example |
|---|---|---|---|
FrameworkSDKRoot |
Famoso | Caminho para a pasta raiz para ferramentas do .NET Framework. | C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\ |
InnerBuildProperty |
Famoso | Especifica o nome da propriedade que define a dimensão de build multitargeting (aplicável somente se o build atual for um build de grafo). | TargetFramework |
InnerBuildPropertyValues |
Famoso | Especifica o nome da propriedade que contém os valores possíveis para o InnerBuildProperty (aplicável somente se o build atual for um build de grafo). |
TargetFrameworks |
IsGraphBuild |
Famoso |
True se este for um build de grafo; ou seja, a opção -graphBuild está em vigor. Essa opção significa que o MSBuild constrói e cria um grafo de projeto. A construção de um grafo envolve a identificação de referências de projeto para formar dependências. A criação desse grafo envolve a tentativa de criar referências de projeto antes dos projetos que fazem referência a eles, diferentemente do agendamento tradicional do MSBuild. |
|
MSBuildAssemblyVersion |
Reservado | A versão dos assemblies do MSBuild usada para compilar o projeto. | 17.0 |
MSBuildBinPath |
Reservado | O caminho absoluto da pasta em que os binários do MSBuild que estão sendo usados estão localizados (por exemplo, C:\Windows\Microsoft.Net\Framework\<versionNumber>). Essa propriedade será útil se você precisar se referir a arquivos no diretório DO MSBuild. Não inclua a barra invertida final nesta propriedade. |
C:\Program Files\Microsoft Visual Studio\2022\MSBuild\Current\Bin\amd64 |
MSBuildDisableFeaturesFromVersion |
Reservado | Usado pelos SDKs do MSBuild e da Microsoft para gerenciar ondas de alterações. | |
MSBuildExtensionsPath |
Famoso | Introduzido no .NET Framework 4: não há diferença entre os valores padrão de MSBuildExtensionsPath e MSBuildExtensionsPath32. Você pode definir a variável MSBUILDLEGACYEXTENSIONSPATH de ambiente como um valor não nulo para habilitar o comportamento do valor padrão de MSBuildExtensionsPath versões anteriores.No .NET Framework 3.5 e anteriores, o valor padrão dos MSBuildExtensionsPath pontos para o caminho da subpasta MSBuild na pasta \Arquivos de Programas\ ou \Arquivos de Programas (x86), dependendo da bitness do processo atual. Por exemplo, para um processo de 32 bits em um computador de 64 bits, essa propriedade aponta para a pasta \Arquivos de Programas (x86 ). Para um processo de 64 bits em um computador de 64 bits, essa propriedade aponta para a pasta \Arquivos de Programas .Não inclua a barra invertida final nesta propriedade. Esse local é um local útil para colocar arquivos de destino personalizados. Por exemplo, seus arquivos de destino podem ser instalados em \Arquivos de Programas\MSBuild\MyFiles\Northwind.targets e importados em arquivos de projeto usando este código XML: <Import Project="$(MSBuildExtensionsPath)\MyFiles\Northwind.targets"/> |
C:\Program Files\Microsoft Visual Studio\2022\MSBuild |
MSBuildExtensionsPath32 |
Famoso | O caminho da subpasta MSBuild na pasta \Arquivos de Programas ou \Arquivos de Programas (x86 ). O caminho sempre aponta para a pasta \Arquivos de Programas (x86) de 32 bits em um computador de 32 bits e \Arquivos de Programas em um computador de 64 bits.". Veja também MSBuildExtensionsPath e MSBuildExtensionsPath64.Não inclua a barra invertida final nesta propriedade. |
C:\Program Files\Microsoft Visual Studio\2022\MSBuild |
MSBuildExtensionsPath64 |
Famoso | O caminho da subpasta MSBuild na pasta \Arquivos de Programas . Para um computador de 64 bits, esse caminho sempre aponta para a pasta \Arquivos de Programas . Para um computador de 32 bits, esse caminho está em branco. Veja também MSBuildExtensionsPath e MSBuildExtensionsPath32.Não inclua a barra invertida final nesta propriedade. |
C:\Program Files\MSBuild |
MSBuildFileVersion |
Reservado | A versão de 4 partes dos assemblies do MSBuild usada para compilar o projeto. | 17.4.0.46505 |
MSBuildFrameworkToolsPath |
Famoso | O caminho para as ferramentas do .NET Framework com as quais o MSBuild em execução foi criado no momento, com uma barra à direita. | C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\ |
MSBuildFrameworkToolsPath32 |
Famoso | O caminho para a versão de 32 bits das ferramentas do .NET Framework para a mesma versão da estrutura com a qual o MSBuild em execução foi criado no momento, com uma barra à direita. | C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\ |
MSBuildFrameworkToolsPath64 |
Famoso | O caminho para a versão de 64 bits das ferramentas do .NET Framework para a mesma versão da estrutura com a qual o MSBuild em execução foi criado no momento, com uma barra à direita. | C:\WINDOWS\Microsoft.NET\Framework64\v4.0.30319\ |
MSBuildInteractive |
Reservado |
true se o MSBuild estiver sendo executado interativamente, permitindo a entrada do usuário. Essa configuração é controlada pela opção -interactive de linha de comando. |
false |
MSBuildLastTaskResult |
Reservado |
true se a tarefa anterior foi concluída sem erros (mesmo se houvesse avisos) ou false se a tarefa anterior tivesse erros. Normalmente, quando ocorre um erro em uma tarefa, o erro é a última coisa que acontece nesse projeto. Portanto, o valor dessa propriedade nunca falseé, exceto nestes cenários:- Quando o ContinueOnError atributo do elemento Task (MSBuild) é definido como WarnAndContinue (ou true) ou ErrorAndContinue.- Quando o Targetelemento OnError (MSBuild) tem como um elemento filho. |
true |
MSBuildNodeCount |
Reservado | O número máximo de processos simultâneos usados ao compilar. Esse é o valor especificado para -maxcpucount na linha de comando. Se você especificou -maxcpucount sem especificar um valor, MSBuildNodeCount especifica o número de processadores no computador. Para obter mais informações, consulte Referência de linha de comando e Compilar vários projetos em paralelo. |
1 |
MSBuildOverrideTasksPath |
Famoso | O local para pesquisar .overridetasks arquivos, que podem ser usados para fornecer versões personalizadas de tarefas padrão. Consulte as tarefas do MSBuild.Não inclua a barra invertida final no caminho. |
|
MSBuildProgramFiles32 |
Reservado | O local da pasta do programa de 32 bits; por exemplo, C:\Arquivos de Programas (x86). Não inclua a barra invertida final nesta propriedade. |
C:\Program Files (x86) |
MSBuildProjectDefaultTargets |
Reservado | A lista completa de destinos especificados no DefaultTargets atributo do Project elemento. Por exemplo, o seguinte Project elemento teria um MSBuildDefaultTargets valor de propriedade de A;B;C:<Project DefaultTargets="A;B;C" > |
Build |
MSBuildProjectDirectory |
Reservado | O caminho absoluto do diretório em que o arquivo de projeto está localizado, por exemplo , C:\MyCompany\MyProduct. Não inclua a barra invertida final nesta propriedade. |
C:\Source\Repos\ConsoleApp1\ConsoleApp1 |
MSBuildProjectDirectoryNoRoot |
Reservado | O valor da MSBuildProjectDirectory propriedade, excluindo a unidade raiz.Não inclua a barra invertida final nesta propriedade. |
Source\Repos\ConsoleApp1\ConsoleApp1 |
MSBuildProjectExtension |
Reservado | A extensão de nome de arquivo do arquivo de projeto, incluindo o período; por exemplo, .proj. | .csproj |
MSBuildProjectFile |
Reservado | O nome de arquivo completo do arquivo de projeto, incluindo a extensão de nome de arquivo; por exemplo, MyApp.proj. | ConsoleApp1.csproj |
MSBuildProjectFullPath |
Reservado | O caminho absoluto e o nome do arquivo completo do arquivo de projeto, incluindo a extensão de nome de arquivo; por exemplo, C:\MyCompany\MyProduct\MyApp.proj. | c:\Source\Repos\ConsoleApp1\ConsoleApp1\ConsoleApp1.csproj |
MSBuildProjectName |
Reservado | O nome do arquivo de projeto sem a extensão de nome de arquivo; por exemplo, MyApp. | ConsoleApp1 |
MSBuildRuntimeType |
Reservado | O tipo do runtime que está sendo executado no momento. Introduzido no MSBuild 15. O valor pode ser indefinido (antes do MSBuild 15), Full indicando que o MSBuild está em execução no .NET Framework da área de trabalho, Core indicando que o MSBuild está em execução no .NET Core (por exemplo dotnet build), ou Mono indicando que o MSBuild está em execução no Mono. |
Full |
MSBuildStartupDirectory |
Reservado | O caminho absoluto da pasta em que o MSBuild é chamado. Usando essa propriedade, você pode criar tudo abaixo de um ponto específico em uma árvore de projeto sem criar <arquivos dirs.proj> em cada diretório. Em vez disso, você tem apenas um projeto, por exemplo, c:\traversal.proj, conforme mostrado aqui:<Project ...> <ItemGroup> <ProjectFiles Include="$ (MSBuildStartupDirectory) **\*.csproj"/> </ItemGroup> <Target Name="build"> <MSBuild Projects="@(ProjectFiles)"/> </Target> </Project>Para compilar em qualquer ponto da árvore, digite: msbuild c:\traversal.projNão inclua a barra invertida final nesta propriedade. |
c:\Source\Repos\ConsoleApp1 |
MSBuildThisFile |
Reservado | O nome do arquivo e a parte de extensão de arquivo de MSBuildThisFileFullPath. |
ConsoleApp1.csproj |
MSBuildThisFileDirectory |
Reservado | A parte do diretório de MSBuildThisFileFullPath.Inclua a barra invertida final no caminho. |
c:\Source\Repos\ConsoleApp1\ConsoleApp1\ |
MSBuildThisFileDirectoryNoRoot |
Reservado | A parte do diretório de MSBuildThisFileFullPath, excluindo a unidade raiz.Inclua a barra invertida final no caminho. |
Source\Repos\ConsoleApp1\ConsoleApp1\ |
MSBuildThisFileExtension |
Reservado | A parte da extensão do nome do arquivo de MSBuildThisFileFullPath. |
.csproj |
MSBuildThisFileFullPath |
Reservado | O caminho absoluto do projeto ou do arquivo de destino que contém o destino em execução. Dica: você pode especificar um caminho relativo em um arquivo de destino relativo ao arquivo de destino e não em relação ao arquivo de projeto original. |
c:\Source\Repos\ConsoleApp1\ConsoleApp1\ConsoleApp1.csproj |
MSBuildThisFileName |
Reservado | A parte do nome do arquivo de MSBuildThisFileFullPath, sem a extensão de nome de arquivo. |
ConsoleApp1 |
MSBuildToolsPath |
Reservado | O caminho de instalação da versão do MSBuild associado ao valor de MSBuildToolsVersion.Não inclua a barra invertida final no caminho. Essa propriedade não pode ser substituída. |
C:\Program Files\Microsoft Visual Studio\2022\MSBuild\Current\Bin\amd64 |
MSBuildToolsPath32 |
Famoso | O caminho de instalação da versão do MSBuild de 32 bits associada ao valor de MSBuildToolsVersion.Não inclua a barra invertida final no caminho. Essa propriedade não pode ser substituída. |
C:\Program Files\Microsoft Visual Studio\2022\MSBuild\Current\Bin |
MSBuildToolsPath64 |
Famoso | O caminho de instalação da versão do MSBuild de 64 bits associada ao valor de MSBuildToolsVersion.Não inclua a barra invertida final no caminho. Essa propriedade não pode ser substituída. |
C:\Program Files\Microsoft Visual Studio\2022\MSBuild\Current\Bin\amd64 |
MSBuildToolsVersion |
Reservado | A versão do Conjunto de Ferramentas do MSBuild usada para compilar o projeto. Observação: um conjunto de ferramentas do MSBuild consiste em tarefas, destinos e ferramentas usadas para criar um aplicativo. As ferramentas incluem compiladores como csc.exe e vbc.exe. Para obter mais informações, consulte o Conjunto de Ferramentas (ToolsVersion) e as configurações padrão e personalizadas do conjunto de ferramentas. |
Current |
MSBuildSDKsPath |
Famoso | O caminho que o MSBuild usa para localizar SDKs. | C:\Program Files\Microsoft Visual Studio\2022\MSBuild\Sdks |
MSBuildSemanticVersion |
Reservado | A versão semver 2.0 completa dos assemblies do MSBuild usada para compilar o projeto. | 17.4.0-preview-22465-05+6033e4c95 |
MSBuildUserExtensionsPath |
Famoso | Esse caminho fornece o local da pasta de instalação do MSBuild. Ele pode ser redefinido para fornecer personalizações locais por usuário. Consulte Personalizar o build local. Não inclua a barra invertida final no caminho. |
|
MSBuildVersion |
Reservado | A versão do MSBuild usada para criar o projeto. Essa propriedade não pode ser substituída, caso contrário, a mensagem MSB4004 - The 'MSBuildVersion' property is reserved, and can't be modified. de erro será retornada. |
17.4.0 |
MSBuildWarningsAsErrors |
Famoso | Uma lista de códigos de aviso a serem tratados como erros. | MSB1234;MSB5678 |
MSBuildWarningsAsMessages |
Famoso | Uma lista de códigos de aviso a serem tratados como mensagens. | MSB1234;MSB5678 |
MSBuildWarningsNotAsErrors |
Famoso | Uma lista de códigos de aviso que não devem ser promovidos a erros mesmo se a opção -warnAsError estiver definida para promover todos os outros avisos a erros. Observe que ele não terá efeito se isso não for verdade. |
MSB1234;MSB5678 |
OS |
Famoso | No Windows, isso é herdado do sistema operacional host. Os valores possíveis incluem "Windows_NT" e "Unix"; pode ser definido como valores diferentes em sistemas operacionais diferentes do Windows. | |
RoslynTargetsPath |
Famoso | Caminho para destinos para compiladores Roslyn. | C:\Program Files\Microsoft Visual Studio\2022\MSBuild\Current\Bin\Roslyn |
SDK35ToolsPath |
Famoso | Caminho para ferramentas do .NET Framework 3.5. | |
SDK40ToolsPath |
Famoso | Caminho para ferramentas do .NET Framework 4.0. | C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\ |
VsInstallRoot |
Famoso | A pasta de instalação do Visual Studio. | C:\Program Files\Microsoft Visual Studio\2022 |
WindowsSDK80Path |
Famoso | Caminho para o SDK do Windows 8. |
Propriedades específicas para projetos do C++
As propriedades a seguir representam o caminho para os arquivos de importação do MSBuild C++, como .props e .targets arquivos, para várias versões do Conjunto de Ferramentas de Build do MSVC (conjunto de ferramentas) e sistemas operacionais de destino. Os arquivos nessas pastas representam a infraestrutura de build do C++ e são essenciais para a criação de qualquer projeto C++ com o MSBuild.
| Propriedade | Reservado ou conhecido | Description | Example |
|---|---|---|---|
AndroidTargetsPath |
Famoso | Caminho para os arquivos de importação do MSBuild do C++ para builds do Android. | C:\Program Files\Microsoft Visual Studio\2022\MSBuild\Microsoft\MDD\Android\V150\ |
iOSTargetsPath |
Famoso | Caminho para arquivos de importação do MSBuild do C++ para builds do iOS. | C:\Program Files\Microsoft Visual Studio\2022\Preview\MSBuild\Microsoft\MDD\iOS\V150\ |
VCTargetsPath |
Famoso | Caminho para arquivos MSBuild C++ que dão suporte ao sistema de build do C++. | C:\Program Files\Microsoft Visual Studio\2022\MSBuild\Microsoft\VC\v170\ |
VCTargetsPath10 |
Famoso | Caminho para arquivos msbuild C++ que dão suporte ao conjunto de ferramentas do Visual Studio 2010. | C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\ |
VCTargetsPath11 |
Famoso | Caminho para os arquivos de importação do MSBuild para o conjunto de ferramentas do Visual Studio 2012 (V110). | C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V110\ |
VCTargetsPath12 |
Famoso | Caminho para os arquivos de importação do MSBuild para o conjunto de ferramentas do Visual Studio 2013 (V120). | C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\ |
VCTargetsPath14 |
Famoso | Caminho para os arquivos de importação do MSBuild para o conjunto de ferramentas do Visual Studio 2015 (V140). | C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\ |
Nomes que entram em conflito com elementos do MSBuild
Além do indicado acima, os nomes correspondentes aos elementos da linguagem MSBuild não podem ser usados para propriedades, itens ou metadados de item definidos pelo usuário:
- VisualStudioProject
- Meta
- PropertyGroup
- Saída
- ItemGroup
- UsingTask
- ProjectExtensions
- OnError
- ImportGroup
- Escolher
- When
- Caso contrário