Preferencialmente, adoto o registro pois é mais confiavel e evita-se de alguem excluir o arquivo pensando que é lixo.
Não estou querendo afirmar que a opção texto é ruim apenas exemplifico minha opniao.
segue os dois exemplos:
'Os códigos abaixo servem para ler e escrever em arquivos .INI
'Para ler arquivos INI faça o seguinte:
'Em um módulo .BAS coloque:
Private Declare Function GetPrivateProfileString Lib "Kernel32" Alias _
"GetPrivateProfileStringA" (ByVal lpApplicationName As String, _
ByVal lpKeyName As String, ByVal lpDefault As String, ByVal _
lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName _
As String) As Long
Private Declare Function GetProfileString Lib "Kernel32" Alias _
"GetProfileStringA" (ByVal lpAppName As String, ByVal lpKeyName _
As String, ByVal lpDefault As String, ByVal lpReturnedString As _
String, ByVal nSize As Integer) As Integer
Private Declare Function WritePrivateProfileString Lib "Kernel32" Alias _
"WritePrivateProfileStringA" (ByVal lpAppName As String, ByVal lpKeyName _
As String, ByVal lpDefault As String, ByVal lpFileName As String) As Integer
'Esta função lê o conteúdo do arquivo ini
Public Function LerIni(Secao, Chave, NomeArquivo)
'Secao = É o que está entre []
'Chave = É o nome que se encontra antes do sinal de igual (=)
'NomeArquivo = É o nome do arquivo INI
Dim Val As String
Dim valor As Integer
Val = String$(255, 0)
valor = GetPrivateProfileString(Secao, Chave, "", Val, Len(Val), NomeArquivo)
If worked = 0 Then
LerIni = ""
Else
LerIni = Left(Val, valor)
End If
End Function
'Esta função escreve no arquivo ini
Public Sub EscreverIni(Secao, Chave, Dado, NomeArquivo)
'Secao = É o que está entre []
'Chave = É o nome que se encontra antes do sinal de igual (=)
'Dado = É o valor que vai depois do sinal de igual (=)
'NomeArquivo = É o nome do arquivo INI
Dim Val As String
Dim valor As Integer
Val = String$(255, 0)
valor = WritePrivateProfileString(Secao, Chave, Dado, NomeArquivo)
End Sub
'Para chamar as funções faça o seguinte:
'
'Text1.Text = LerIni("EntreColchetes", "AntesDoIgual", "ARQUIVO.INI")
'Call EscreverIni ("EntreColchetes", "AntesDoIgual", "ValorPosIgual", "ARQUIVO.INI")
'------------------------------------------------------------------------------
'use o registro do Windows para armazenar dados.
'Para salvar os dados, use a seguinte sintaxe:
SaveSetting <nome_aplicativo>, <par_1>, <par_2>, <par_3>, <par_4>
'exemplo:
SaveSetting "Agenda", "Registro", "Nome", Text1.Text
'Para recuperar os dados, use a seguinte sintaxe:
Registro = GetSetting (<nome_aplicativo>, <par_1>, <par_2>, <par_3>)
'exemplo
Registro = GetSetting ("Agenda", "Registro", "Nome")
'para excluir, use o seguinte:
DeleteSetting <nome_aplicativo>, <par_1>
'exemplo
DeleteSetting "Agenda", "Registro"