Partilhar via


Como: Adicionar ferramentas de compilação personalizado para projetos do MSBuild

Uma ferramenta de compilação personalizada é uma ferramenta de linha de comando definido pelo usuário que está associada um determinado arquivo.

Para um arquivo específico, especifique o arquivo de projeto (.vcxproj) da linha de comando para executar, qualquer entrada adicional ou arquivos de saída, e uma mensagem para exibir. Se MSBuild determina que os arquivos de saída estão desatualizados em relação aos arquivos de entrada, ele exibe a mensagem e executa a ferramenta de linha de comando.

Para especificar quando executa a ferramenta de compilação personalizada, use um ou ambos os CustomBuildBeforeTargets e CustomBuildAfterTargets os elementos XML no arquivo de projeto. Por exemplo, você pode especificar que a ferramenta de compilação personalizada deve ser executado após o compilador MIDL e antes do compilador C/C++. Especificar o CustomBuildBeforeTargets elemento para executar a ferramenta antes de ser executado em um destino específico; o CustomBuildAfterTargets elemento para executar a ferramenta após um determinado destino; ou os dois elementos para executar a ferramenta entre a execução de dois destinos. Se nenhum elemento for especificado, a ferramenta de compilação personalizada executa em seu local padrão, que é anterior a MIDL de destino.

Etapas de compilação personalizada e ferramentas de compilação personalizada compartilham as informações especificadas no CustomBuildBeforeTargets e CustomBuildAfterTargets todos os elementos XML. Especifique esses destinos uma vez no seu arquivo de projeto.

Para adicionar uma ferramenta de compilação personalizada

  • Adicione um grupo de itens para o arquivo de projeto e um item para cada arquivo de entrada. Especifica o comando, entradas adicionais, saídas e uma mensagem como metadados de item, conforme mostrado aqui. Este exemplo pressupõe que "faq.txt" existe um arquivo no mesmo diretório do seu projeto.

      <ItemGroup>
        <CustomBuild Include="faq.txt">
          <Message>Copying readme...</Message>
          <Command>copy %(Identity) $(OutDir)%(Identity)</Command>
          <Outputs>$(OutDir)%(Identity)</Outputs>
        </CustomBuild>
      </ItemGroup>
    

Para definir onde na compilação as ferramentas de compilação personalizada executará

  • Adicione o grupo de propriedade a seguir ao arquivo de projeto. Você deve especificar pelo menos um dos destinos, mas você pode omitir a outra se você estiver interessado em ter a etapa de compilação para executar antes (ou depois) um destino específico. Este exemplo executa a etapa personalizada após a compilação, mas antes de vincular.

    <PropertyGroup>
      <CustomBuildAfterTargets>ClCompile</CustomBuildAfterTargets>
      <CustomBuildBeforeTargets>Link</CustomBuildBeforeTargets>
    </PropertyGroup>
    

Consulte também

Tarefas

Demonstra Passo a passo: Usando o MSBuild para criar um projeto do Visual C++

Como: Use eventos compilação em projetos do MSBuild

Como: Adicionar uma etapa de compilação personalizado para projetos do MSBuild