tengo una duda por ejemplo aquellos programas que cuando uno los configura.. y por ejemplo de la a una opcion X osea lo clikea en un check button.. y cierran el programa y todo y cuando lo vuelven a abrir el check button esta chekeado osea no se pone sin chekear. como lo hacen?
se entiende?
xD.. man disculpa pero sino es mucha molestia seria posible ver si me podias pasar un tuto acerca de eso.. que he tratado de buscar pero nada! :S
mmmmm no te creo que no encontras,ya que hay un monton de paginas que te dicen eso de guardar en .ini ,es imposible no encontrar...
Cita de: ricardovinzo en 28 Julio 2008, 05:28 AM
que he tratado de buscar pero nada
hay que buscarce bien la vida, solo con escribir "archivos ini vb6" en google, ya tienes la respuesta.
-------------------------------------------------
Leer y grabar datos en un archivo INIEjemplo que utiliza las funciones Api GetPrivateProfileString y WritePrivateProfileString para grabar y leer datos en un archivo de configuración iniLa función que lee es GetPrivateProfileString, la función que graba WritePrivateProfileString.
Las dos poeen casi los mismos parámetros: ( La ruta y nombre del archivo Ini, el nombre de La clave a leer o grabar, el Valor que se va a leer o grabar.)
Nota: La función GetPrivateProfileString, tiene un parámetro adicional ( ByVal lpDefault As String ) para los valores por defecto en caso de que no haya ningún dato que leer.
El siguiente ejemplo lo que hace es leer y almacenar en un archivo Ini ( ubicado en el App.Path del programa y llamado Config.ini), ..el ancho, alto, el Top y el Left del formulario.
En el evento FormLoad, se llama a la función de ajuste llamada Leer_Ini ( Esta función retorna el valor leeido )
Private Function Leer_Ini(Path_INI As String, Key As String, Default As Variant) As String
..en el evento Unload del formulario se llama a la función Grabar_Ini.
Private Function Grabar_Ini(Path_INI As String, Key As String, Valor As Variant) As String
En el fichero Ini se almacenarán los datos de esta forma:
[MiPrograma]
Left=0
Top=0
Width=12165
Height=5000
Nota: Si el archivo ini no existe, la función api WritePrivateProfileString, lo crea automáticamente, o sea que no generará error de Acceso o ruta de archivo inexistente
Código fuente en el formulario Option Explicit
Const APPLICATION As String = "MiPrograma"
Dim m_Left As Single
Dim m_Top As Single
Dim m_Width As Single
Dim m_Height As Single
Dim Path_Archivo_Ini As String
'Función api que recupera un valor-dato de un archivo Ini
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
'Función api que Escribe un valor - dato en un archivo Ini
Private 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
'Lee un dato _
-----------------------------
'Recibe la ruta del archivo, la clave a leer y _
el valor por defecto en caso de que la Key no exista
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
'Escribe un dato en el INI _
-----------------------------
'Recibe la ruta del archivo, La clave a escribir y el valor a añadir en dicha clave
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 Sub Form_Load()
'Path del fichero Ini
Path_Archivo_Ini = App.Path & "\config.ini"
' Lee las Key y Les envia el valor por defecto por si no existe
m_Left = Leer_Ini(Path_Archivo_Ini, "Left", 0)
m_Top = Leer_Ini(Path_Archivo_Ini, "Top", 0)
m_Width = Leer_Ini(Path_Archivo_Ini, "Width", 5000)
m_Height = Leer_Ini(Path_Archivo_Ini, "Height", 5000)
'Posiciona el formulario con los valores del archivo Ini
Move m_Left, m_Top, m_Width, m_Height
End Sub
Private Sub Form_Unload(Cancel As Integer)
'Escribe en el archivo Ini
'Posición del Form
Call Grabar_Ini(Path_Archivo_Ini, "Left", Me.Left)
Call Grabar_Ini(Path_Archivo_Ini, "Top", Me.Top)
'Tamaño del formulario
Call Grabar_Ini(Path_Archivo_Ini, "Width", Me.Width)
Call Grabar_Ini(Path_Archivo_Ini, "Height", Me.Height)
End Sub
Fuente: Leer y grabar datos en un archivo INI (http://www.recursosvisualbasic.com.ar/htm/listado-api/159-leer-grabar-archivo-ini.htm)
saludos...