
09/10/2004, 15:58
|
 | | | Fecha de Ingreso: noviembre-2003
Mensajes: 418
Antigüedad: 21 años, 6 meses Puntos: 0 | |
Bien, no quisiera cambiarte los tantos, pero aquí te paso un código para poder leer y escribir en archivos INI sin complicarte la vida:
Código:
'declares for ini controlling
Private Declare Function GetPrivateProfileSection Lib "kernel32" Alias "GetPrivateProfileSectionA" (ByVal lpAppName As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
Private Declare Function WritePrivateProfileSection Lib "kernel32" Alias "WritePrivateProfileSectionA" (ByVal lpAppName As String, ByVal lpString As String, ByVal lpFileName As String) As Long
Private Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long
'// INI CONTROLLING PROCEDURES
'reads ini string
Public Function ReadIni(Filename As String, Section As String, Key As String) As String
Dim RetVal As String * 255, v As Long
v = GetPrivateProfileString(Section, Key, "", RetVal, 255, Filename)
If v > 0 Then ReadIni = Left(RetVal, v)
End Function
'reads ini section
Public Function ReadIniSection(Filename As String, Section As String) As String
Dim RetVal As String * 255, v As Long
v = GetPrivateProfileSection(Section, RetVal, 255, Filename)
If v > 1 Then ReadIniSection = Left(RetVal, v - 1)
End Function
'writes ini
Public Sub WriteIni(Filename As String, Section As String, Key As String, Value As String)
WritePrivateProfileString Section, Key, Value, Filename
End Sub
'writes ini section
Public Sub WriteIniSection(Filename As String, Section As String, Value As String)
WritePrivateProfileSection Section, Value, Filename
End Sub
Para utilizarlo sólo escribes:
Código:
'Escritura
WriteIni "C:\Windows\winmine.ini","Buscaminas","Difficulty","3"
'Lectura
ReadIni "C:\Windows\winmine.ini","Buscaminas","Difficulty",variable
Espero te resulte util.
En cuanto al código que utilizas debería funcionar bien. En todo caso, prueba con Print #1, "......."
A ver si así te funciona, o prueba a colocar un Close antes del Open, a veces esto resuelve el problema.
Saludos.
__________________ La cantidad total de inteligencia del planeta permanece constante.
La población, sin embargo, sigue aumentando. COLE :cool: Los ordenadores no resuelven problemas ... ejecutan soluciones.Laurent Gasser Tienes alguna duda :pensando: ? >>> www.google.com :aplauso: <<< |