Exportar (0) Imprimir
Expandir Tudo
Este artigo foi traduzido por máquina. Coloque o ponteiro do mouse sobre as frases do artigo para ver o texto original. Mais informações.
Tradução
Original

Como: Propriedades de configuração de acesso para tipos específicos de projetos

The Visual Studio modelo de automação geral fornece o Properties coleção que pode ser usada para acessar o Properties coleções de qualquer Visual Studio tipo de projeto. Entre outras coisas, propriedades do projeto permitem que você controle as configurações de segurança, a configuração da compilação e a configuração de depuração.

Para conjunto e examinar as propriedades do projeto manualmente, abra um projeto no Visual Studio ambiente de desenvolvimento integrado (IDE). Sobre o Projeto menu, clicar Propriedades. The Propriedades janela tem várias guias e cada painel lista propriedades que são usadas para definir e controle o comportamento de projetos. O modelo de automação permite controlar essas configurações por meio de programação. Specifically, the properties listed in CSharpProjectConfigurationProperties4, VBProjectConfigurationProperties4, JSharpProjectConfigurationProperties3, and ProjectConfigurationProperties3 enable you to control the project properties found on the Build (Compile for Visual Basic projects) and Debug Properties window panes of the Properties page of the currently active configuration.

Você também pode escolher uma configuração diferente, não é atualmente ativo, acessando o ConfigurationManager objeto. Para obter mais informações, consulte Como: Criar a solução e configurações de compilação do projeto.

Propriedades de configuração para Visual C# e Visual J# projetos são definidos em CSharpProjectConfigurationProperties4 e JSharpProjectConfigurationProperties3, respectivamente. The CodePage, DisableLangXtns, JCPA, e SecureScoping propriedades são específicas para Visual J# somente projetos. The ErrorReport e LanguageVersion propriedades são específicas para Visual C# somente projetos. O restante das propriedades em CSharpProjectConfigurationProperties3 e JSharpProjectConfigurationProperties3 são sistema autônomo mesmas propriedades no ProjectConfigurationProperties3.

Essas propriedades de configuração não podem ser acessadas por diretamente a projeção um Property objeto para um CSharpProjectConfigurationProperties3, JSharpProjectConfigurationProperties3, ou ProjectConfigurationProperties3 objeto. Em vez disso, você pode acesso essas propriedades, passando o nome do item de configuração sistema autônomo uma seqüência de caracteres, sistema autônomo mostrado abaixo:

    EnvDTE.Project proj;
    EnvDTE.Configuration config;
    EnvDTE.Properties configProps;
    EnvDTE.Property prop;
    proj = DTE.Solution.Projects.Item(1);
    config = proj.ConfigurationManager.ActiveConfiguration;
    configProps = config.Properties;
    prop = configProps.Item("EnableSQLServerDebugging")

Este código acessa ambos o CSharpProjectConfigurationProperties3.EnableSQLServerDebugging, JSharpProjectConfigurationProperties3.EnableSQLServerDebugging, ou ProjectConfigurationProperties3.EnableSQLServerDebugging propriedade dependendo se a proj Define a variável de um Visual C#, Visual J#, ou Visual Basic projeto.

Na verdade, sistema autônomo propriedades de configuração definidos no CSharpProjectConfigurationProperties3, JSharpProjectConfigurationProperties3, ou ProjectConfigurationProperties3 são uma lista de referência de propriedades de configuração disponível para projetos específicos que podem ser acessados sistema autônomo itens de propriedade de configuração de projeto por meio de Properties coleção.

As etapas abaixo do detalhe como programaticamente acesso as propriedades de configuração da configuração ativo no momento em um Visual Studio suplemento.

ObservaçãoObservação:

As caixas de diálogo e comandos de menu que você vê podem diferir daqueles descritos na Ajuda, dependendo das suas configurações ativas ou de edição. Esses procedimentos foram desenvolvidos com as Configurações Gerais de Desenvolvimento ativas. Para alterar as configurações, escolher Importar e exportar configurações on the Ferramentas menu. Para obter mais informações, consulte Configurações do Visual Studio.

Para acessar propriedades de configuração para um tipo específico de projeto

  1. Criar um Visual Studio Projeto suplemento usando Visual C#.

  2. Sobre o Projeto menu, clicar Adicionar referência, clicar no NET guia, selecionar sistema.Windows.Forms, VSLangProj, VSLangProj2, and VSLangProj80e clicar OK.

  3. Adicione as seguintes-instruções using na parte superior do arquivo conectar.cs.

    using VSLangProj;
    using VSLangProj2;
    using VSLangProj80;
    using VSLangProj90;
    using System.Windows.Forms;
    
  4. Adicione a seguinte telefonar de função para a função OnConnection.

    _applicationObject = (DTE2)application;
    _addInInstance = (AddIn)addInInst;
    VSProjectConfigProperties(_applicationObject);
    
  5. Adicione o método VSProjectConfigProperties logo abaixo o método OnConnection.

    public void VSProjectConfigProperties(DTE2 dte)
    {
        try
        {
            // Open a Visual C#, Visual J#, or Visual Basic project
            // before running this add-in.
            Project project;
            Configuration config;
            Properties configProps;
            Property prop;
            project = _applicationObject.Solution.Projects.Item(1);
            config = project.ConfigurationManager.ActiveConfiguration;
            configProps = config.Properties;
            prop = configProps.Item("PlatformTarget");
            MessageBox.Show("The platform target for this project is: "
     + prop.Value.ToString());
            prop = configProps.Item("WarningLevel");
            MessageBox.Show
    ("The warning level for this project is set to: " 
    + prop.Value.ToString());
            MessageBox.Show("Changing the warning level to 3...");
            prop.Value = "3";
            MessageBox.Show
    ("The warning level for this project is now set to: " 
    + prop.Value.ToString());
            if (project.Kind == PrjKind.prjKindCSharpProject)
            {
                MessageBox.Show("The project is a Visual C# Project");
                prop = configProps.Item("LanguageVersion");
                MessageBox.Show("The language version value is : " 
    + prop.Value.ToString());
                MessageBox.Show("Setting the language version to 
    ISO-1");
                prop.Value = "ISO-1";
                MessageBox.Show("The language version value is now: " 
    + prop.Value.ToString());
            }
            if (project.Kind == PrjKind2.prjKindVJSharpProject)
            {
                MessageBox.Show("The project is a Visual J# Project");
                prop = configProps.Item("CodePage");
                MessageBox.Show("The code page value is : " 
    + prop.Value.ToString());
                MessageBox.Show
    ("Setting the code page value to my code page");
                prop.Value = "my code page";
                MessageBox.Show("The code page value is now: " 
    + prop.Value.ToString());
            }
        }
        catch(Exception ex)
        {
            MessageBox.Show(ex.Message);
        }
    }
    

    O método VSProjectConfigProperties obtém e exibe o PlatformTarget valor da propriedade. Ele as define e obtém o WarningLevel propriedade. Se o projeto for um Visual C# projeto, o método VSProjectConfigProperties define e obtém o LanguageVersion propriedade. Se o projeto for um Visual J# projeto, o método define e obtém o CodePage propriedade.

  6. Criar o suplemento clicando em Criar solução on the Compilação Menu.

  7. Abra um Visual C#, Visual J#, ou Visual Basic projeto na Visual Studio IDE.

  8. Sobre o Ferramentas menu, clicar Gerenciador de suplementoe selecionar seu suplemento a partir de Gerenciador de suplemento caixa de diálogo. clicar OK para executar seu suplemento.

  9. Validar que o nível de aviso foi alterado, clicando em Propriedades on the Projeto menu e, em seguida, selecionar o Compilação guia o Propriedades janela.

    The Nível de aviso campo reflete a alterar feita por meio de programação.

  10. Para validar a configuração de versão de linguagem para um Visual C# projeto, nas Compilação painel do Propriedades janela, clicar Avançado.

    The Versão de linguagem campo de do Configurações avançadas de compilaçãocaixa de diálogo refletirá a alterar do suplemento feito.

  11. Para validar a alterar para a configuração de página de código de um Visual J# projeto, nas Compilação painel do Propriedades janela, clicar Avançado.

    The Página de código campo de do Configurações avançadas de compilaçãocaixa de diálogo refletirá a alterar a esta propriedade.

O exemplo a seguir é um básico Visual Studio suplemento que demonstra como acesso propriedades de um tipo específico de projeto por meio de automação em Visual Studio.

using System;
using Extensibility;
using EnvDTE;
using EnvDTE80;
using System.Windows.Forms;
using VSLangProj;
using VSLangProj2;
using VSLangProj80;
public void OnConnection(object application, 
ext_ConnectMode connectMode, object addInInst, ref Array custom)
{
    _applicationObject = (DTE2)application;
    _addInInstance = (AddIn)addInInst;
    VSProjectConfigProperties(_applicationObject);
}
public void VSProjectConfigProperties(DTE2 dte)
{
    try
    {
        // Open a Visual C#, Visual J#, or Visual Basic project
        // before running this add-in.
        Project project;
        Configuration config;
        Properties configProps;
        Property prop;
        project = _applicationObject.Solution.Projects.Item(1);
        config = project.ConfigurationManager.ActiveConfiguration;
        configProps = config.Properties;
        prop = configProps.Item("PlatformTarget");
        MessageBox.Show("The platform target for this project is: 
" + prop.Value.ToString());
        prop = configProps.Item("WarningLevel");
        MessageBox.Show
("The warning level for this project is set to: " 
+ prop.Value.ToString());
        MessageBox.Show("Changing the warning level to 3...");
        prop.Value = "3";
        MessageBox.Show
("The warning level for this project is now set to: " 
+ prop.Value.ToString());
        if (project.Kind == PrjKind.prjKindCSharpProject)
        {
            MessageBox.Show("The project is a Visual C# Project");
            prop = configProps.Item("LanguageVersion");
            MessageBox.Show("The language version value is : " 
+ prop.Value.ToString());
            MessageBox.Show("Setting the language version to ISO-1");
            prop.Value = "ISO-1";
            MessageBox.Show("The language version value is now: " 
+ prop.Value.ToString());
        }
        if (project.Kind == PrjKind2.prjKindVJSharpProject)
        {
            MessageBox.Show("The project is a Visual J# Project");
            prop = configProps.Item("CodePage");
            MessageBox.Show("The code page value is : " 
+ prop.Value.ToString());
            MessageBox.Show
("Setting the code page value to my code page");
            prop.Value = "my code page";
            MessageBox.Show("The code page value is now: " 
+ prop.Value.ToString());
        }
    }
    catch(Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}

Para compilar este código criar um novo Visual Studio Projeto suplemento e substitua o código do método OnConnection com o código de exemplo. Para obter informações sobre como executar um suplemento, consulte Como: Controlarar Adicionar-ins com o Adicionar - in Gerente.

Contribuições da comunidade

ADICIONAR
A Microsoft está realizando uma pesquisa online para saber sua opinião sobre o site do MSDN. Se você optar por participar, a pesquisa online lhe será apresentada quando você sair do site do MSDN.

Deseja participar?
Mostrar:
© 2014 Microsoft