Hola a todos necesito una instruccion para realizar una busqueda en archivo plano. y como generar el archivo plano .dat, para guardar mis registros. Nota: Soy novato. Por su ayuda muchas gracias
Sos al primero que respondo pues recién comienzo en esta web. Mira lo mejor para lo que nesecitas es ver un ejemplo copia este código en un Modulo (Bas): '''En un Modulo Bas ' Leer todas las secciones de un fichero INI, esto seguramente no funciona en Win95 ' *** Esta función no estaba en las declaraciones del API que se incluye con el VB *** Declare Function GetPrivateProfileSectionNames _ Lib "kernel32" Alias "GetPrivateProfileSectionNamesA" _ (ByVal lpszReturnBuffer As String, ByVal nSize As _ Long, ByVal lpFileName As String) As Long Declare Function WritePrivateProfileSection _ Lib "kernel32" Alias "WritePrivateProfileSectionA" _ (ByVal lpAppName As String, ByVal lpString As String, _ ByVal lpFileName As String) As Long Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long ' Leer una sección completa 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 ' Leer una clave de un fichero INI 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 ' Escribir una clave de un fichero INI (también para borrar claves y secciones) 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 Public Function LeerIni(Seccion As String, Clave As String, Optional Archivo As String = "eam.vxd") As String Dim ret As Long, Buff As String * 400 ret = GetPrivateProfileString(Seccion, Clave, "Vacio", Buff, Len(Buff), _ Archivo) LeerIni = Left$(Buff, ret) End Function Public Sub EscribirIni(Seccion As String, Clave As String, valor As String, Optional Archivo As String = "eam.vxd") Dim retor As Long If Archivo = "" Then Archivo = App.Path & "\config.dat" End If retor = WritePrivateProfileString(Seccion, Clave, valor, Archivo) End Sub Public Function leerIni1(Seccion As String, Clave As String, Optional Archivo As String = "eam.vxd") As String Dim ret As Long, Buff As String * 255 ret = GetPrivateProfileString(Seccion, Clave, "", Buff, Len(Buff), _ Archivo) leerIni1 = Left$(Buff, ret) End Function Public Function leerSeccionesIni(Optional Archivo As String) As String() Dim retor As Long, sTemp As String * 5000 If Archivo = "" Then Archivo = App.Path & "\config.inf" End If Retor = GetPrivateProfileSectionNames(sTemp, Len(sTemp), Archivo) 'GetPrivateProfileSection(Seccion, sTemp, Len(sTemp), Archivo) sTemp = Left$(sTemp, retor - 2) Dim matriz matriz = Split(sTemp, Chr(0)) leerSeccionesIni = matriz End Function Public Function LeerValoresSeccionIni(Seccion As String, Optional Archivo As String) As String() Dim retor, sTemp As String * 32760 If Archivo = "" Then Archivo = App.Path & "\config.inf" End If Retor = GetPrivateProfileSection(Seccion, sTemp, Len(sTemp), Archivo) 'GetPrivateProfileSection(Seccion, sTemp, Len(sTemp), Archivo) If retor = 0 Then Exit Function End If sTemp = Left$(sTemp, retor - 1) Dim matriz matriz = Split(sTemp, vbNullChar) LeerValoresSeccionIni = matriz End Function '''fin del modulo bas 'codigo en un formulario 'agrega dos botones de comandos 'y dos cajas de texto deja los controles con los nombres por defecto 'y ejecuta el codigo del mismo Private Sub Command1_Click() 'el primer parametro es el nombre de la session, el segundo es el nombre de la clave 'el tercero es el valor a escribir y el cuarto es el nombre y ruta del archivo ' si no se pasa esl 4º arg. se crea un archivo llamado config.dat EscribirIni "Nombre Session", "Texto", Text1.Text, App.Path & "\archivo.dat" End Sub Private Sub Command2_Click() Text2.Text = LeerIni("Nombre Session", "Texto", App.Path & "\archivo.dat") End Sub
Te pasaste gracias, no se si tienes algun programa pequeño con ingreso de datos, consultas,busquedas, grabar, modificar e imprimir en un informe. tengo que entregar mi tarea la otra semana. me puedes ayudar., Gracias