File modification alert from windows api

3 visualizaciones (últimos 30 días)
Fedor Simkovic
Fedor Simkovic el 19 de Feb. de 2012
Editada: Image Analyst el 17 de Oct. de 2013
Hello!
I want my matlab program to receive a notification from or through the windows api whenever a file is externally modified (a picture) so that it can immediately load the new file. I am basically trying to avoid using a timer function as that one only looks for changes once a time interval and when i make the interval too small it produces problems.
Thanks!
  2 comentarios
Oleg Komarov
Oleg Komarov el 19 de Feb. de 2012
Too small how small?
Image Analyst
Image Analyst el 19 de Feb. de 2012
What problems do you get? What's wrong with a timer? What file parameters are you checking? The date/time via fileinfo()?

Iniciar sesión para comentar.

Respuesta aceptada

Jiro Doke
Jiro Doke el 20 de Feb. de 2012
You may be able to use the .NET interface, using the FileSystemWatcher class.
Here's a simple example in MATLAB (assuming you have an image called "mypicture.jpg" in the current folder:
% Watch this folder
w = System.IO.FileSystemWatcher(pwd);
% Watch a particular image file
w.Filter = 'mypicture.jpg';
% Notify when the file changes
w.NotifyFilter = System.IO.NotifyFilters.LastWrite;
% Create a listener for change
addlistener(w, 'Changed', @changedFcn);
% Start watching.
w.EnableRaisingEvents = true;
You also need to create a function like this:
function changedFcn(obj, eData)
fprintf('Changed: %s\n', char(eData.FullPath));
end
Try modifying the image.

Más respuestas (0)

Categorías

Más información sobre Images en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by