Compartilhar via


Substituindo ToolsVersion Configurações

Usando o /ToolsVersion switch (ou /tv, de forma abreviada) ou o $(ProjectToolsVersion) propriedade, você pode substituir a configuração de ToolsVersion no arquivo de projeto, que permite a você, por exemplo, constrói um projeto em uma solução com uma versão do conjunto de ferramentas diferente dos outros projetos. Você também pode substituir a ToolsVersion do MSBuild tarefas usando o ToolsVersion parâmetro da tarefa.

Para obter mais informações sobre ToolsVersion, consulte Usando o MSBuild para versões específicas de destino do estrutura translation from VPE for picture itExclMark.

Substituir as configurações de ToolsVersion dos projetos em compilações de linha de comando

Embora Visual Studio 2008 normalmente compilação dos projetos com ToolsVersion especificado no arquivo de projeto, você pode usar o /ToolsVersion (ou, /tv) alternar na linha de comando para substituir esse valor e a compilação de todos os projetos e suas dependências de projeto-para-projeto com um conjunto de ferramentas diferentes. Por exemplo:

C:\windows\microsoft.net\framework\v3.5>msbuild.exe someproj.proj /tv:3.5 /p:Configuration=Debug

Neste exemplo, todos os projetos são criados usando o ToolsVersion 3.5. (Entretanto, consulte a seção "Ordem de precedência" neste tópico).

Ao usar o /tv Alternar na linha de comando, opcionalmente, você pode usar o $(ProjectToolsVersion) propriedade em projetos individuais para criá-los com um valor de ToolsVersion diferente de outros projetos na solução.

Substituir as configurações de ToolsVersion utilizando o parâmetro ToolsVersion da tarefa MSBuild

A tarefa MSBuild é o principal meio para um projeto criar outro. Para habilitar a tarefa do MSBuild criar um projeto com um ToolsVersion diferente daquele especificado no projeto, ele fornece um parâmetro de tarefa opcional chamado ToolsVersion. A seguir é um exemplo de uso:

<MSBuild Projects="MyProject1" 
         Targets="Build" 
         Properties="Configuration=Debug" 
         ToolsVersion="2.0">
    <Output TaskParameter="TargetOutputs" ItemName="Outputs" /> 
</MSBuild>

Ordem de precedência

A ordem de precedência, em ordem decrescente, usado para determinar a ToolsVersion usada por um projeto para criar é:

  1. O atributo ToolsVersion da tarefa do MSBuild usados para construir o projeto, se houver.

  2. O /tv switch usado em MSBuild. exe, se houver. (Semelhante à tarefa msbuild externa).

  3. O atributo de ToolsVersion do arquivo de projeto.

  4. A versão de ferramentas padrão no arquivo config.

  5. A versão de ferramentas padrão no registro.

Números 1, 2 e 3 são iguais às propriedades:

  • Atributo de propriedades da tarefa do MSBuild

  • /p: Ative o MSBuild. exe

  • Marca de propriedade no arquivo de projeto

Se você não especificar um valor para /ToolsVersion Quando você cria na linha de comando, Visual Studio 2005 soluções serão construído usando o valor ToolsVersion "2.0" e Visual Studio 2008 soluções serão construído usando um valor de ToolsVersion "3.5".

Consulte também

Outros recursos

MSBuild Concepts

Criação de versões específicas da.NET Framework