Configuração da solução

As configurações da solução armazenam propriedades no nível da solução. Eles direcionam o comportamento da tecla Start (F5) e dos comandos Build. Por padrão, esses comandos compilam e iniciam a configuração de depuração. Ambos os comandos são executados no contexto de uma configuração de solução. Isso significa que o usuário pode esperar que o F5 inicie e compile qualquer que seja a solução ativa configurada por meio das configurações. O ambiente é projetado para otimizar para soluções em vez de projetos quando se trata de construir e executar.

A barra de ferramentas padrão do Visual Studio contém um botão Iniciar e uma lista suspensa de configuração de solução à direita do botão Iniciar. Essa lista permite que os usuários escolham a configuração a ser iniciada quando F5 é pressionado, criem suas próprias configurações de solução ou editem uma configuração existente.

Observação

Não há interfaces de extensibilidade para criar ou editar as configurações da solução. Você deve usar DTE.SolutionBuildo . No entanto, há APIs de extensibilidade para gerenciar a compilação da solução. Para obter mais informações, consulte IVsSolutionBuildManager2.

Aqui está como você pode implementar as configurações de solução suportadas pelo seu tipo de projeto:

  • Projeto

    Exibe os nomes dos projetos encontrados na solução atual.

  • Configuração

    Para fornecer a lista de configurações suportadas pelo seu tipo de projeto e exibidas nas páginas de propriedades, implemente IVsCfgProvider2o .

    A coluna Configuração exibe o nome da configuração do projeto a ser compilada nessa configuração de solução e lista todas as configurações do projeto quando você clica no botão de seta. O ambiente chama o GetCfgNames método para preencher essa lista. Se o método indicar que o projeto oferece suporte à edição de configuração, as seleções New ou Edit também serão exibidas sob o GetCfgProviderProperty cabeçalho Configuração. Cada uma dessas seleções inicia caixas de diálogo que chamam métodos da IVsCfgProvider2 interface para editar as configurações do projeto.

    Se um projeto não oferecer suporte a configurações, a coluna Configuração exibirá Nenhum e será desabilitada.

  • Plataforma

    Exibe a plataforma para a qual a configuração do projeto selecionado é compilada e lista todas as plataformas disponíveis para o projeto quando você clica no botão de seta. O ambiente chama o GetPlatformNames método para preencher essa lista. Se o método indicar que o projeto oferece suporte à edição de plataforma, as seleções Nova ou Editar também serão exibidas sob o GetCfgProviderProperty título Plataforma. Cada uma dessas seleções inicia caixas de diálogo que chamam IVsCfgProvider2 métodos para editar as plataformas disponíveis do projeto.

    Se um projeto não oferecer suporte a plataformas, a coluna de plataforma desse projeto exibirá Nenhum e será desabilitada.

  • Compilação

    Especifica se o projeto é criado pela configuração da solução atual. Projetos não selecionados não são criados quando os comandos de compilação no nível da solução são invocados, apesar de quaisquer dependências de projeto que eles contenham. Os projetos não selecionados para serem criados ainda são incluídos na depuração, execução, empacotamento e implantação da solução.

  • Implantar

    Especifica se o projeto será implantado ou não quando os comandos Iniciar ou Implantar forem usados com a configuração de compilação da solução selecionada. A caixa de seleção desse campo estará disponível se o projeto oferecer suporte à implantação implementando a IVsDeployableProjectCfg interface em seu IVsProjectCfg2 objeto.

    Depois que uma nova configuração de solução é adicionada, o usuário pode selecioná-la na caixa de listagem suspensa Configuração da Solução na barra de ferramentas padrão para compilar e/ou iniciar essa configuração.