Ver Mensaje Individual
  #8  
Antiguo 01-06-2010
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.557
Reputación: 25
egostar Va camino a la fama
Cita:
Empezado por escafandra Ver Mensaje
He encontrado esto. Si tengo un rato, traduzco o que puse en C para complementar y dar una versión mas simple.

Saludos.
Hola amigo escafandra, te puedes ahorrar el tiempo de la traducción utilizando el componente que viene con Delphi (y que no está instalado) que se llama precisamente TShellChangeNotifier, este componente hasta donde sé viene desde la versión 7 de Delphi, se localiza dentro de la carpeta ShellControls dentro de DEMOS

En Delphi 2007 se localiza en la siguiente ruta

C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Demos\DelphiWin32\VCLWin32\ShellControls

Se instalan los siguientes componentes:

TShellTreeView
TShellComboBox
TShellListView
TShellChangeNotifier
(Que es el que nos ocupa en este momento)

Este componente tiene varias opciones en la propiedad NotifyFilters, si lo que quieren es solo ver los archivos nuevos se pone la opción nfWriteChange en true y las demás en false. Si quieres ver los subdirectorios nuevos asignas la opción nfDirNameChange, etc...

Tiene también otra propiedad que es la que indica que directorio quieres monitorear y es la propiedad Root.

Por último en el evento OnChange ya puedes escribir el código que desees para filtrar el archivo que ha sido creado.

También pueden ver este artículo que cuenta con una interesante aplicación Monitoring System Shell Changes using Delphi

Saludos
Responder Con Cita