Necesito generar un evento cuando otro archivo cierra un archivo.Monitorear archivos similares a System Internal's/Microsoft FileMon/Process Monitor
Desafortunadamente, ReadDirectoryChangesW no informa el evento de cierre. Sería posible para mí sondear (con un TTimer) cualquier archivo que informara ReadDirectoryChangesW como modificado, esperando a que se cierre (usando CreateFile para detectar esto).
Sin embargo, lo que prefiero es una solución completamente orientada a eventos.
¿Hay alguna forma de conectar las llamadas al sistema y detectar todos los eventos de cierre de archivos? Simplemente quiero saber la ruta & nombre de cualquier archivo que acaba de cerrarse.
¿Tiene alguna idea de por qué los cambios de índices de objetos no le da el evento? Esto normalmente debería funcionar sin ningún problema en ninguna unidad local y extraíble (y con más frecuencia incluso en cualquier unidad de red). Alguna vez has probado las rutinas de notificación de cambios del explorador: SHChangeNotifyRegister? –
No quiere que se detecte que el identificador del archivo se haya cerrado, no se haya eliminado el archivo. ReadDirectoryChangesW no proporciona ese evento. – Runner