O que é o formato de ficheiro CONFIG?
Arquivos .config são comumente usados dentro de um sistema como arquivos de configuração. Usando arquivos de configuração, várias opções, parâmetros e preferências dentro de aplicações específicas ou de todo o sistema são definidos. Na maioria dos arquivos .config, todas as propriedades são armazenadas como texto simples - na maioria das vezes como XML, que é o formato que o Microsoft .NET usa para App.config (aplicações desktop) e Web.config (projetos web ASP.NET). Alguns programas, em vez disso, usam um formato de chave=valor estilo INI ou YAML.
Softwares de computador e sistemas operacionais geralmente dependem de muitas configurações e parâmetros necessários para controlar processos em andamento. Arquivos .config servem a esse propósito - entre outras coisas, eles especificam diretórios de arquivos, strings de conexão e chaves de comportamento da aplicação. Em alguns programas, mais de um arquivo desse tipo pode ser usado, mas isso é geralmente visto em aplicações mais complexas.
- Como são arquivos baseados em texto, eles podem ser editados com qualquer editor de texto simples, incluindo o Bloco de Notas no Windows. Antes de editar, você deve se familiarizar com o conteúdo do arquivo, pois alterações incorretas podem afetar negativamente o funcionamento de programas ou do sistema operacional.
- Arquivos
.configdefinem como um programa inicializa ou opera em tempo de execução - a maioria das aplicações os lê durante a inicialização. No .NET, oApp.configde um projeto é copiado e renomeado para<AssemblyName>.exe.configna pasta de saída. - O runtime do .NET também lê um arquivo
machine.configde todo o sistema e mescla suas configurações com a configuração da aplicação; as configurações de nível de app têm precedência sobre os padrões da máquina. Formatos relacionados incluem arquivos .cfg usados por muitas aplicações que não são .NET.
Segurança e proteção
RISCO: MEDIUMUm .config de texto é seguro para abrir e ler. O risco está na EDIÇÃO: como um .config frequentemente controla se o programa inicia (e, no caso do .NET, como ele se conecta a bancos de dados), um valor incorreto, erro de digitação ou tag XML quebrada pode impedir o funcionamento da aplicação. Sempre copie o original para um backup antes de alterar qualquer coisa, edite com um editor de texto simples/código (nunca um processador de texto) e altere uma coisa de cada vez. Observe também que arquivos .config podem conter dados sensíveis (strings de conexão de banco de dados, senhas, chaves de API no Web.config) - trate-os como confidenciais e tenha cuidado com arquivos de configuração «otimizados» baixados de fontes não confiáveis.
Detalhes do formato
em resumoProgramas que abrem arquivos CONFIG
Detalhes técnicos
especificação profunda| Formato primário | XML - um elemento raiz `<configuration>` envolvendo as seções `<appSettings>`, `<connectionStrings>` e `<system.*>` no layout padrão do .NET |
| Codificação do arquivo | UTF-8 (padrão para arquivos de configuração XML do .NET; codificação declarada no prólogo XML) |
| Tipo MIME | `text/xml` |
| Assinatura do arquivo | Nenhuma universal; a variante XML do .NET começa com `<?xml ...?>` no deslocamento 0; variantes de chave=valor estilo INI não possuem magic bytes |
| Elemento raiz (.NET) | `<configuration>` - elemento externo obrigatório; filhos como `<appSettings>` e `<connectionStrings>` seguem um esquema imposto pelo runtime |
| Mecanismo de leitura em runtime | Lido na inicialização da aplicação pelo `ConfigurationManager` do .NET (ou `IConfiguration` no .NET Core / .NET 5+); alterações exigem o reinício do app, a menos que um recarregamento de configuração seja explicitamente configurado |
| Padrões de nível de máquina | `machine.config` na pasta de instalação do .NET Framework fornece padrões para todo o sistema; as configurações de `.config` da aplicação sempre substituem os padrões da máquina |
| Transformação em tempo de compilação | Arquivos de Transformação de Documento XML (`.xdt`), como `App.Debug.config` e `App.Release.config`, são mesclados pelo MSBuild para produzir arquivos de saída específicos do ambiente |
| Nome do arquivo implantado | Para apps desktop .NET, a saída é renomeada para `<AssemblyName>.exe.config`; para ASP.NET, o arquivo permanece como `Web.config` na raiz da web |
| Seção de strings de conexão | O elemento filho `<connectionStrings>` armazena strings de conexão de banco de dados nomeadas; o atributo `providerName` especifica o provedor ADO.NET (ex: `System.Data.SqlClient`) |
| Formatos de texto alternativos | Algumas aplicações usam `.config` para texto `chave=valor` estilo INI, YAML ou TOML em vez de XML - o formato interno é inteiramente definido pela aplicação |
| Tratamento de segurança | O IIS bloqueia o acesso HTTP direto a arquivos `.config` por padrão; valores sensíveis, como senhas, podem ser criptografados localmente usando `aspnet_regiis -pe` no Windows |
| Finais de linha | Geralmente CRLF no Windows, LF no Linux/macOS; o analisador XML normaliza ambos |
| Extensões relacionadas | `.cfg`, `.ini`, `.conf`, `.xml`, `.json`, `.yaml` |
| Lançado | No single origin; .NET App.config/Web.config since .NET Framework 1.0 (2002) |
| Especificação | learn.microsoft.com |
Conversões de CONFIG
Perguntas e Respostas da Comunidade
perguntado por usuáriosAinda não há perguntas - seja o primeiro a perguntar sobre arquivos CONFIG.