Página de propriedades avançadas
A página de propriedades Avançadas está disponível no Visual Studio 2019 e posteriores. Para ver a documentação dessa versões, defina o controle seletor de Versão do Visual Studio para este artigo do Visual Studio 2019 ou posteriores. Ele é encontrado na parte superior da tabela de conteúdo nesta página. Em versões anteriores do Visual Studio, essas propriedades aparecem na página de propriedade Geral:
A página de propriedades Avançadas está disponível no Visual Studio 2019 e posteriores. As propriedades específicas mostradas dependem do tipo de projeto. Windows Runtime (Plataforma Universal do Windows ou projetos UWP) não mostram esta página.
Propriedades avançadas
Extensão do arquivo de destino
Especifica a extensão de arquivo a ser usada para a saída de build. O padrão é .exe
para aplicativos, .lib
para bibliotecas estáticas e .dll
para DLLs.
Extensões a serem excluídas na limpeza
O comando do menu Build>Limpar exclui arquivos do diretório intermediário no qual a configuração de um projeto foi compilada. O sistema de build exclui arquivos com as extensões especificadas quando você executa o comando Limpar ou quando você recompila. O sistema de build também exclui qualquer saída conhecida do build, independentemente do local em que esteja localizada. Os arquivos excluídos incluem saídas intermediárias, como arquivos .obj
. Use ponto e vírgula (;
) para separar extensões. Você pode especificar caracteres curinga (*
, ?
) nas extensões.
Para acessar essa propriedade de forma programática, confira DeleteExtensionsOnClean.
Arquivo de log de build
Permite que você especifique um local não padrão para o arquivo de log criado sempre que um projeto é compilado. A localização padrão é especificada pelas macros $(IntDir)$(MSBuildProjectName).log
.
Use as macros do projeto para alterar o local do diretório. Para obter mais informações, confira Macros comuns para comandos e propriedades de build.
Arquitetura Preferencial da Ferramenta de Build
Especifica se devem ser usadas as ferramentas de build x86 ou x64.
Usar bibliotecas de depuração
Especifica se deve ser criado um build de depuração ou de versão. Apesar do nome, Use Debug Libraryes é uma propriedade específica do sistema de build que é efetivamente abreviada para "Criar um build de depuração" ou "Criar um build de versão". Ela define várias propriedades do compilador e do vinculador para builds de depuração ou versão, incluindo as configurações de biblioteca. Você pode usá-lo para criar configurações de depuração ou versão para uma nova plataforma ou em um novo modelo. Não recomendamos que você altere essa propriedade em uma configuração existente. Use as propriedades individuais do compilador e do vinculador.
Habilitar o Build do Unity (JUMBO)
Habilita um processo de build mais rápido que combina muitos arquivos de origem C++ em um ou mais arquivos antes da compilação. Esses arquivos combinados são conhecidos como arquivos do Unity. Eles não estão relacionados ao mecanismo de jogo do Unity.
Copiar conteúdo para o OutDir
Copie os itens marcados como conteúdo no projeto para o diretório de saída do projeto ($(OutDir)
). Essa configuração pode simplificar a implantação. Essa propriedade está disponível a partir do Visual Studio 2019 versão 16.7.
Copiar referências de projeto para OutDir
Copie os itens de referência do projeto executável (arquivo DLL e EXE) para o diretório de saída do projeto ($(OutDir)
). Em projetos C++/CLI (/clr
), essa propriedade é ignorada. Em vez disso, a propriedade Copy Local em cada referência de projeto controla se ela é copiada para o diretório de saída. Essa configuração pode simplificar a implantação local. Ela está disponível a partir do Visual Studio 2019 versão 16.7.
Copiar símbolos de referências de projeto para OutDir
Copie os arquivos PDB para itens de referência de projeto junto com os itens executáveis de referência do projeto para o diretório de saída do projeto ($(OutDir)
). Essa propriedade está sempre habilitada para projetos C++/CLI. Essa configuração pode simplificar a implantação de depuração. Ela está disponível a partir do Visual Studio 2019 versão 16.7.
Copiar o Runtime do C++ para o OutDir
Copie as DLLs de runtime para o diretório de saída do projeto ($(OutDir)
). Essa configuração pode simplificar a implantação local. Ela está disponível a partir do Visual Studio 2019 versão 16.7.
Uso do MFC
Especifica se o projeto do MFC será vinculado estática ou dinamicamente à DLL do MFC. Em projetos que não são do MFC, selecione Usar Bibliotecas Padrão do Windows.
Para acessar essa propriedade de forma programática, confira useOfMfc.
Conjunto de caracteres
Especifica se a macro do pré-processador _UNICODE
ou _MBCS
deve ser definida. Também afeta o ponto de entrada do vinculador, quando apropriado.
Para acessar essa propriedade de forma programática, confira CharacterSet.
Otimização do Programa Inteiro
Especifica a opção do compilador /GL
e a opção /LTCG
do vinculador. Por padrão, essa propriedade está desabilitada para configurações de Depuração e habilitada para configurações de Lançamento.
Versão do Conjunto de Ferramentas do MSVC
Especifica a versão completa do conjunto de ferramentas MSVC usado para criar o projeto. Você pode ter várias versões de atualização e visualização de um conjunto de ferramentas instalado. Você pode especificar qual delas usar aqui.
Versão do Conjunto de Ferramentas LLVM
Especifica a versão completa do conjunto de ferramentas LLVM usado para compilar o projeto. Essa propriedade está disponível quando a LLVM (clang-cl) é selecionada como o conjunto de ferramentas da plataforma, começando no Visual Studio 2019 versão 16.9. Para obter mais informações, confira Definir uma versão personalizada do conjunto de ferramentas para LLVM.
Habilitar saída estruturada MSVC
Especifica se a saída SARIF estruturada deve ser habilitada, o que habilita a janela Detalhes do Problema e a saída hierárquica na janela Saída no Visual Studio.
Propriedades C++/CLI
Suporte a Common Language Runtime
Faz com que a opção do compilador /clr
seja usada.
Para acessar essa propriedade de forma programática, confira ManagedExtensions.
Versão da Estrutura de Destino .NET
Essa propriedade só se aplica quando a propriedade de suporte do Common Language Runtime é definida como Suporte ao .NET Framework Runtime, ou seja, o projeto é direcionado ao .NET Framework e especifica a versão do .NET Framework.
Estrutura de destino do .NET
Essa propriedade só se aplica quando a propriedade de suporte do Common Language Runtime é definida como Suporte ao .NET Runtime, ou seja, o projeto tem como destino o .NET.
Essa propriedade especifica o Moniker da Estrutura de Destino do .NET 5+ que esse projeto tem como destino, por exemplo net6.0-windows
, ou net7.0-windows8.0
.
Habilitar Build Incremental Gerenciado
Para projetos gerenciados, essa opção habilita a detecção de visibilidade externa quando você gera assemblies. Se uma alteração em um projeto gerenciado não estiver visível para outros projetos, os projetos dependentes não serão recompilados. Builds incrementais gerenciados podem melhorar de maneira significativa os tempos de build em soluções que incluem projetos gerenciados.
Habilitar o suporte CLR para arquivos individuais
Essa opção define uma propriedade ManagedAssembly
de build que permite a criação de apenas alguns arquivos no projeto como código gerenciado. Você deve definir Habilitar o Suporte CLR para arquivos individuais como Sim se alguns, mas não todos os seus arquivos de projeto forem criados como código gerenciado. Essa propriedade só está disponível em projetos que usam o conjunto de ferramentas v143 ou posteriores no Visual Studio 2022 e versões posteriores.
Versão do Windows do .NET Target
Essa propriedade só se aplica quando a propriedade de suporte do Common Language Runtime é definida como Suporte ao .NET Runtime, ou seja, o projeto tem como destino o .NET.
Essa propriedade especifica a versão mínima do Windows compatível com o projeto. Esse valor é usado pelo NuGet para determinar a compatibilidade de projetos e dependências de pacote NuGet. Se um projeto A depender do projeto B, a versão do Windows de destino do .NET do projeto A deverá ser maior ou igual à do projeto B.