Leer y grabar ini

Estado
Cerrado para nuevas respuestas.

iaorengo

Newbie Lvl 3
Buenas,

Tengo un problema en VB y espero me puedan ayudar.
Se trata de un código simple de leer y grabar datos en un archivo *.ini.

Tengo el siguiente código que la verdad me sirve muy bien pero hay un dato que necesito leer que no puedo.

Dejo el código:


Declaraciones:


Código:
Public Const APPLICATION As String = "NAME"
Public Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As String, ByVal lpString As String, ByVal lpFileName As String) As Long 'ESCRIBE
Public 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 'LEER
Funcion para leer y escribir.

Código:
Private Function Grabar_Ini(Path_INI As String, Key As String, Valor As Variant) As String
WritePrivateProfileString APPLICATION, Key, Valor, Path_INI
End Function
 
Private Function Leer_Ini(Path_INI As String, Key As String, Default As Variant) As String
Dim bufer As String * 256
Dim Len_Value As Long
Len_Value = GetPrivateProfileString(APPLICATION, Key, Default, bufer, Len(bufer), Path_INI)
Leer_Ini = Left$(bufer, Len_Value)
End Function
Grabar y leer:


Código:
Call Grabar_Ini("RUTA\archivo.ini", "KEY", "VALOR")
Leer_Ini("RUTA\archivo.ini", "KEY", 0)

El codigo funciona perfectamente, solo que yo necesito leer de una key TODO su valor. Es decir, así como está ahora me lee del key y todo lo que está atras del igual, pero si hay más valor hacia abajo no lo lee. ¿Se puede moficar ese para que lea TODO lo que hay en su key? o ¿conocen algún otro código que funcione y que cumpla dicha funcion?


Ejemplo:
Si en ARCHIVO.INI está de la siguiente manera:
Código:
[NAME]
KEY=Hola. El día esta nublado.
También hace frio y parece que va a llover.

En ese caso el código sólo lee lo siguiente: "Hola. El día esta nublado." Dejando lo que hay abajo. ¿Hay forma de que reconozca lo que está sepado por enter que siga perteneciendo al key?

Muchas gracias de antemano.
 

Mafia

Juree!
Nunca lo probe, pero mediante GetVar y WriteVar me parece que no. Tendrias que usar Print y Open
 

iaorengo

Newbie Lvl 3
Print y open abren todo el archivo. Con este código sólo que está despues del KEY pero, a su vez, sólo la primera linea y yo quiero todas las lineas dentro del Key.
 

Mafia

Juree!
iaorengo dijo:
Print y open abren todo el archivo. Con este código sólo que está despues del KEY pero, a su vez, sólo la primera linea y yo quiero todas las lineas dentro del Key.
Lo que podes hacer es leer las lineas manualmente sin tenes que leer todo el archivo mediante Print/Open
 
Estado
Cerrado para nuevas respuestas.
Arriba