Partilhar via


Configurar aplicativos usando arquivos de configuração

Observação

Este artigo é específico do .NET Framework. Ele não se aplica a implementações mais recentes do .NET, incluindo o .NET 6 e versões posteriores.

O .NET Framework oferece aos desenvolvedores e administradores controle e flexibilidade sobre a maneira como os aplicativos são executados através arquivos de configuração. Os arquivos de configuração são arquivos XML que podem ser alterados conforme necessário. Um administrador pode controlar quais recursos protegidos um aplicativo pode acessar, quais versões de assemblies um aplicativo usará e onde os aplicativos e objetos remotos estão localizados. Os desenvolvedores podem colocar configurações em arquivos de configuração, eliminando a necessidade de recompilar um aplicativo sempre que uma configuração for alterada. Esta seção descreve o que pode ser configurado e por que configurar um aplicativo pode ser útil.

Observação

O código gerenciado pode usar as classes no namespace System.Configuration para ler as definições dos arquivos de configuração, mas não para gravar as configurações nesses arquivos.

Este artigo descreve a sintaxe dos arquivos de configuração e fornece informações sobre os três tipos de arquivos de configuração: máquina, aplicativo e segurança.

Formato do arquivo de configuração

Os arquivos de configuração contêm elementos , que são estruturas de dados lógicas que definem informações de configuração. Em um arquivo de configuração, você usa tags para marcar o início e o fim de um elemento. Por exemplo, o elemento <runtime> consiste em elementos-filho <runtime></runtime>. Um elemento vazio seria escrito como <runtime/> ou <runtime></runtime>.

Como em todos os arquivos XML, a sintaxe nos arquivos de configuração diferencia maiúsculas de minúsculas.

Você especifica definições de configuração usando atributos predefinidos, que são pares nome/valor dentro da marca inicial de um elemento. O exemplo a seguir especifica dois atributos (version e href) para o elemento <codeBase>, que especifica onde o tempo de execução pode localizar um assembly (para obter mais informações, consulte Especificando o local de um assembly).

<codeBase version="2.0.0.0"
          href="http://www.litwareinc.com/myAssembly.dll"/>

Arquivos de configuração da máquina

O arquivo de configuração da máquina, Machine.config, contém configurações que se aplicam a um computador inteiro. Este ficheiro está localizado no diretório \Config no caminho de instalação do tempo de execução %%. Machine.config contém definições de configuração para vinculação de montagem em toda a máquina, canais internos remotose ASP.NET.

O sistema de configuração procura primeiro no arquivo de configuração da máquina o elemento <appSettings> e outras seções de configuração que um desenvolvedor pode definir. Em seguida, ele procura no arquivo de configuração do aplicativo. Para manter o arquivo de configuração da máquina gerenciável, é melhor colocar essas configurações no arquivo de configuração do aplicativo. No entanto, colocar as configurações no arquivo de configuração da máquina pode tornar seu sistema mais fácil de manter. Por exemplo, se você tiver um componente de terceiros usado pelo aplicativo cliente e servidor, será mais fácil colocar as configurações desse componente em um só lugar. Nesse caso, o arquivo de configuração da máquina é o local apropriado para as configurações, portanto, você não tem as mesmas configurações em dois arquivos diferentes.

Observação

A implantação de um aplicativo usando XCOPY não copiará as configurações no arquivo de configuração da máquina.

Para obter mais informações sobre como o common language runtime usa o arquivo de configuração da máquina para vinculação de assembly, consulte How the Runtime Locates Assemblies.

Arquivos de configuração do aplicativo

Um arquivo de configuração de aplicativo contém configurações específicas de um aplicativo. Esse arquivo inclui definições de configuração que o Common Language Runtime lê (como política de vinculação de assembly, objetos remotos e assim por diante) e configurações que o aplicativo pode ler.

O nome e o local do arquivo de configuração do aplicativo dependem do host do aplicativo, que pode ser um dos seguintes:

  • Aplicação hospedada em executável.

    Esses aplicativos têm dois arquivos de configuração: um arquivo de configuração de origem, que é modificado pelo desenvolvedor durante o desenvolvimento, e um arquivo de saída que é distribuído com o aplicativo.

    Por padrão, o nome do arquivo de configuração de origem é App.config. Quando você cria um projeto do .NET Framework no Visual Studio, um arquivo App.config é adicionado automaticamente ao projeto. Você também pode adicionar um arquivo manualmente selecionando Arquivo>Novo Arquivo. Coloque o ficheiro App.config no diretório do projeto e defina a sua propriedade Copiar para Diretório de Saída como Copiar sempre ou Copiar semais recente.

    Para criar o arquivo de configuração de saída implantado com o aplicativo, o Visual Studio copia o arquivo de configuração de origem para o diretório onde o assembly compilado é colocado. Este ficheiro tem o nome <yourappname>.exe.config. Por exemplo, um aplicativo chamado myApp.exe tem um arquivo de configuração de saída chamado myApp.exe.config.

    Em alguns casos, o Visual Studio pode modificar o arquivo de configuração de saída. Para obter mais informações, consulte Redirecionar versões no nível do aplicativo.

  • Aplicação hospedada em ASP.NET.

    Para obter mais informações sobre ASP.NET arquivos de configuração, consulte ASP.NET Configuration Settings.

Arquivos de configuração de segurança

Os arquivos de configuração de segurança contêm informações sobre a hierarquia do grupo de códigos e os conjuntos de permissões associados a um nível de política. É altamente recomendável que você use a ferramenta Code Access Security Policy (Caspol.exe) para modificar a diretiva de segurança para garantir que as alterações de diretiva não corrompam os arquivos de configuração de segurança.

Observação

A partir do .NET Framework 4, os arquivos de configuração de segurança estarão presentes somente se a diretiva de segurança tiver sido alterada.

Os arquivos de configuração de segurança estão nos seguintes locais:

  • Arquivo de configuração da política empresarial: %%\Config\Enterprisesec.config runtime-install-path

  • Arquivo de configuração da política de máquina: %%\Config\Security.config runtime-install-path

  • Arquivo de configuração da política de usuário: %USERPROFILE%\Application data\Microsoft\CLR security config\vxx.xx\Security.config

Ver também