?
Hallo,
ich habe eine Frage, die in Verbindung zu FindFirstChangeNotification bzw. ReadDirectoryChangesW steht. Programmtechnisch an sich kein Problem ist, durch diese Funktionen Änderungen am Dateisystem festzustellen. Wenn ich also wissen will, welche Dateien sich geändert haben, helfen diese Funktionen. Was aber ist, wenn ich danach die Datei lesen will?
Meistens, beim Kopieren mit dem Explorer oder beim Speichern (z. B. aus Notepad), bekomme ich mehrere Benachrichtigungen (Änderung der letzten Schreibzeit). Diese treten nicht immer paarig (am Anfang und am Ende) auf, sondern es kann gerade bei großen Dateien passieren, dass zwei Nachrichten am Anfang des Schreibens kommen und eine am Ende.
Die am Ende ist die, auf die ich eigentlich warte, da ich ja die komplette Datei lesen will. Ein Timer nach der ersten Benachrichtigung ist auch keine richtige Lösung, da ich ja nicht weiß, wie lange der Schreibvorgang tatsächlich dauert.
Habt Ihr eine Idee dazu?
Meine Idee ist zu versuchen, die Datei zum Schreiben(+Lesen?) zu öffnen, ohne sie zu natürlich ändern. Wenn das funktioniert, weiß ich, dass ich exklusiven Zugriff habe. Womit ich natürlich wieder Zugriffszeit und Schreibzeit beeinflusse - was ggf. wieder zu neuen Benachrichtigungen führt
Wie könnte man ein solches Problem lösen?
Danke und viele Grüße,
Ulf