2017-05-18 2 views
1

Excel-Dateien manuell in einen lokalen Ordner fallen lassen, gibt es einen FileWatcher, der die Datei in eine neue Dateistruktur konvertiert und in den nächsten Ordner verschiebt die auch einen Dateiwächter haben. Wenn diese Datei in den nächsten Ordner verschoben wird, löst der Dateiwächter kein Ereignis aus. Wenn ich es jedoch ausschneide und es physisch ablege, wird das Ereignis ausgelöst. ich File.Move bin mit kopieren Datei aus folder1C# FileSystemWatcher feuert, wenn ich eine Datei physisch lösche, aber nicht wenn ich File.Move

+1

Fügen Sie Ihren Code bitte hinzu. –

+0

Was meinen Sie mit "neue Dateistruktur"? Vielleicht ein Duplikat von http://stackoverflow.com/questions/11468637/filesystemwatcher-not-raising-when-files-are-copied-or-moved-to-folder – Renier

Antwort

0

versuchen, umbenanntes Ereignis zu verwenden.

Ein weiterer Grund könnte die Puffergröße überschritten werden.

Public void WatchItBaby() 
{ 
    // ... 
    FileSystemWatcher watcher = new FileSystemWatcher(@"c:\temp\", "*.txt");    
    watcher.Created += new FileSystemEventHandler(OnChangedOrRenamed);   
    watcher.Renamed += new RenamedEventHandler(OnChangedOrRenamed); 
    watcher.EnableRaisingEvents = true; 
    // ... 
} 

private void OnChangedOrRenamed(object source, FileSystemEventArgs e) 
{ 
    // stuff   
} 
Verwandte Themen