Os arquivos de configuração .INI há um bom tempo foram substituídos no .Net pelos arquivos XML, muito mais flexíveis e padronizados. Entretanto, quando trabalhamos com sistemas legados, seja para fazer integrações, migrações ou o que quer que seja, acabamos nos deparando com os saudosos arquivos .INI. Ao invés de criar rotinas caseiras para trabalhar com estes arquivos, que tal uma biblioteca em C# que cumpra esse papel com louvor? A biblioteca Nini faz isto e muito mais: além dos arquivos .INI, ela abstrai o acesso a arquivos de configuração XML, .Net Config, Registry e argumentos de linha de comando. O site do projeto não possui nada, apenas os links para poder baixar, mas a documentação vem junto com o arquivo baixado.
Segue um exemplo do próprio manual da Nini:
; MyApp.ini
[Logging]
File Name = MyApp.log
MessageColumns = 5
MaxFileSize = 40000000000000
1: // Usando C#
2: using Nini.Config;
3: IConfigSource source = new IniConfigSource("MyApp.ini");
4:
5: string fileName = source.Configs["Logging"].Get("File Name");
6: int columns = source.Configs["Logging"].GetInt("MessageColumns");
7: long fileSize = source.Configs["Logging"].GetLong("MaxFileSize");
1: 'E usando VB.Net
2: Imports Nini.Config
3:
4: Dim source As New IniConfigSource("MyApp.ini")
5:
6: Dim fileName As String = source.Configs("Logging").Get("File Name")
7: Dim columns As Integer = source.Configs("Logging").GetInt("MessageColumns")
8: Dim fileSize As Long = source.Configs("Logging").GetLong("MaxFileSize")
00bcb6c4-922d-40a6-b0d0-010a5117a800|0|.0