![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|
|
#1
|
|||
|
|||
|
Ecfisa,
Por otro lado he probado el codigo que pones en el mensaje #17, pero tampoco contempla todas las líneas añadidas desde la última modificación y se "traga" algunas... sigo pensando que es lo del flush, je,je Gracias :-) EDITO: Otra cosa mas.... he intentado descargarme el ejemplo del mensaje #26 y no puedo, no se si será por el control de contenido de mi trabajo, pero al abrir el zip se queja de error crc (lo he intentado varias veces. lo probaré desde casa).... Última edición por paquechu fecha: 26-03-2013 a las 12:52:29. |
|
#2
|
||||
|
||||
|
Cita:
Saludos. ![]()
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
|
#3
|
|||
|
|||
|
Acabo de hacer pruebas con el "notificador" que tiene la api de windows y creo que tampoco soluciona el problema de los cambios sufridos por un archivo en tiempo real.
He encontrado un archivo donde figura el componente y un ejemplo de uso que he probado de la siguiente forma: En mi PC: he ejecutado el programa de demo que incluye el archivo que os dejo en el post y cuando hay una modificacion en un archivo del directorio que se elija, el cambio de tamaño de archivo se refleja bien, pero cuando hago lo mismo en el servidor donde se genera el log del isa server (que es un servidor virtual) ya no parece enterarse de los cambios. NO se, creo que voy a investigar mas en la linea de guardar la posicion de la ultima línea leida y la próxima vez que el codigo detecte modificación leer a partir de esa posición..... Saludos. :-) Última edición por paquechu fecha: 26-03-2013 a las 15:32:46. Razón: Se me ha olvidado el archivo.... |
|
#4
|
||||
|
||||
|
paquechu,
Cita:
El código anterior permite detectar cambios a nivel de Creación, Modificación y Eliminación de Archivos y Directorios dentro de un Directorio específico (Directorio objetivo de Monitoreo) y sus subdirectorios por medio de la función ReadDirectoryChangesW. Este código fue probado en tres Máquinas Virtuales con Windows XP Professional x32, Windows 7 Professional x32 y x64 y una Máquina Física con Windows 7 Professional x32 y en todos los casos funcionó correctamente. El código esta disponible en el siguiente link: http://terawiki.clubdelphi.com/Delph...oryMonitor.rar Nota: Una forma simple de probar el programa es monitorear el directorio C:\ Revisa estos links: Cita:
![]() Nelson. Última edición por nlsgarcia fecha: 27-03-2013 a las 04:08:25. |
|
#5
|
||||
|
||||
|
paquechu,
Cita:
Cita:
Cita:
El código anterior permite monitorear un archivo específico (Función ReadDirectoryChangesW) y por medio de un archivo de control determinar las líneas que se han adicionado durante el monitoreo. El código es una especialización de lo sugerido en los Msg #6 y #35. Nota: El código anterior asume el monitoreo de archivos de texto en el cual las lineas finalizan con los caracteres de control CRLF. Solo se puede monitorear un archivo a la vez en esta versión la cual permite: 1- Iniciar el Hilo de Monitoreo a un Archivo Específico. 2- Finalizar el Hilo de Monitoreo a un Archivo Específico. 3- Salvar los cambios registrados en el Archivo Monitoreado a un archivo de texto. 4- Solo se monitorean las líneas adicionadas. 5- El archivo de control es creado cada vez que se selecciona un archivo específico para monitoreo. El código esta disponible en el siguiente link: http://terawiki.clubdelphi.com/Delph...ileMonitor.rar Espero sea útil ![]() Nelson. Última edición por nlsgarcia fecha: 29-03-2013 a las 22:59:14. |
|
#6
|
||||
|
||||
|
paquechu,
Nota: La función GetFileLastLine del código del Msg #36 se modifico para adaptarse a posibles operaciones de Delete en el archivo monitoreado por medio de la Actualización del Valor de Control (Tamaño del archivo monitoreado), como se muestra a continuación: Esta modificación solo ajusta el valor de control en el caso de que el archivo monitoreado disminuya su tamaño, no se registra el cambio en el control TListBox. El nuevo código modificado esta disponible en el link: http://terawiki.clubdelphi.com/Delph...i%F3n+2%29.rar Espero sea útil ![]() Nelson. Última edición por nlsgarcia fecha: 29-03-2013 a las 23:57:19. |
|
#7
|
|||
|
|||
|
Hola nlsgarcia,
He probado el código y funciona a la perfección.... lee las líneas correctamente, se añadan una a una o varias de golpe. Gran curro :-) Muchisimas gracias por vuestra gran ayuda :-) Un abrazo. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|