FileSystemWatcher: Event wird 2mal gestartet!

29/11/2007 - 11:15 von Ralph Hüttenmoser | Report spam
Guten Tag

Ich setze auf 1XML-File einen Watcher. Wenn ich die Datei àndere wird der Event "OnChanged" 2mal aufgerufen.

Woran kann das liegen?

Ralph

[PermissionSet(SecurityAction.Demand, Name = "FullTrust")]
public static void WatchDataFile()
{
//declare filewatcher
FileSystemWatcher dataFileWatcher = new FileSystemWatcher();

//isolate path
Environment.CurrentDirectory = Application.StartupPath.ToUpper().Replace(@"\DEBUG", "");
string XMLFilePath = Environment.CurrentDirectory.Replace(@"\BIN", @"\DATA\");


dataFileWatcher.Path = XMLFilePath;
dataFileWatcher.Filter = "MainData.XML"; //datafile
dataFileWatcher.IncludeSubdirectories = false;

//Filter for Last Write changes.
dataFileWatcher.NotifyFilter = NotifyFilters.LastWrite;

//Handler for Changed Event
dataFileWatcher.Changed += new FileSystemEventHandler(OnChanged);


//Begin watching
dataFileWatcher.EnableRaisingEvents = true;
}

// Define the event handlers.
private static void OnChanged(object source, FileSystemEventArgs e)
{
// Specify what is done when a file is changed, created, or deleted.
MessageBox.Show("File: " + e.FullPath + " " + e.ChangeType);
}
 

Lesen sie die antworten

#1 Herfried K. Wagner [MVP]
29/11/2007 - 11:50 | Warnen spam
Hallo Ralph!

On 29 Nov., 11:15, "Ralph Hüttenmoser"
wrote:
Ich setze auf 1XML-File einen Watcher. Wenn ich die Datei àndere wird der Event "OnChanged" 2mal aufgerufen.



Z.B., weil sowohl die Dateilànge als auch das Datum des letzten
Dateizugriffs veràndert wird. Lies dazu auch den "Remarks"-Abschnitt
in der Dokumentation:

'FileSystemWatcher.Changed' Event
<URL:http://msdn2.microsoft.com/en-us/library/
system.io.filesystemwatcher.changed.aspx>

Herfried K. Wagner [MVP]
<URL:http://dotnet.mvps.org/>

Ähnliche fragen