Feedback

C# - Verzeichnis überwachen mit dem FileSystemWatcher

Veröffentlicht von am 09.07.2006
(1 Bewertungen)
Überwacht das angegebene Verzeichnis mit Hilfe des FileSystemWatcher
GFU-Schulungen  [Anzeige]

VB.NET Einführung

Die Schulung zeigt Ihnen, wie Sie einfache, benutzerorientierte Programme, die auf Datenbanken zugreifen, in VB.NET eigenständig entwickeln. 

C# Komplett

Sie kennen sich in objektorientierter Programmierung aus. Sie schreiben C++ oder Java? Und nun stehen Sie vor der Aufgabe, in C# Anwendungen zu erstellen. Das C# Komplett-Seminar verschafft Ihnen umfassende Programmierkenntnisse in dieser Sprache. Nach der Schulung entwickeln Sie selbständig Anwendungen mit C#. Sie kennen die Datentypen und Klassenbibliotheken der objektorientierten Programmiersprache C#. Der Komplettkurs setzt bei den Grundlagen von C# ein. Sie arbeiten mit Variablen und konvertieren Typen. Multithreading, Delegates, Generics sind nach dem Seminar für Sie kein Geheimnis mehr.

FileSystemWatcher FSW;

private void FSW_Initialisieren()
{
    // Filesystemwatcher anlegen
    FSW = new FileSystemWatcher();

    // Pfad und Filter festlegen
    FSW.Path = @"C:\test";
    FSW.Filter = "*.txt";

    // Events definieren
    FSW.Changed += new FileSystemEventHandler(FSW_Changed); 
    FSW.Created += new FileSystemEventHandler(FSW_Created); 
    FSW.Deleted += new FileSystemEventHandler(FSW_Deleted); 
    FSW.Renamed += new RenamedEventHandler(FSW_Renamed);

    // Filesystemwatcher aktivieren
    FSW.EnableRaisingEvents = true;
}

// Handler für alle Events
void FSW_Renamed(object sender, RenamedEventArgs e)
{            
    MessageBox.Show("Umbenannt: " + e.Name);
}

void FSW_Deleted(object sender, FileSystemEventArgs e)
{
    MessageBox.Show("Gelöscht: " + e.Name);
}

void FSW_Created(object sender, FileSystemEventArgs e)
{
    MessageBox.Show("Erstellt: " + e.Name);
}

void FSW_Changed(object sender, FileSystemEventArgs e)
{
    MessageBox.Show("Geändert: " + e.Name);
}

1 Kommentare zum Snippet

Kaya schrieb am 23.11.2009:
Warum kommen mehrere Ereignisse wenn eine Datei im Verzeichnis durch das Kopieren überschrieben wird? Ich habe versucht "FSW.NotifyFilter = NotifyFilters.LastWrite;" zu ändern, hat nichts gebracht. Ich will in einem Verzeichnis festlegen welche Datei geändert wird (Datei wird durch das Kopieren von einem anderen Aplikation überschrieben, Inhalt wird geändert) um anschlieseend diese Datei in einem Thraed weiter zu bearbeiten. Vielen Dank im voraus.
 

Logge dich ein, um hier zu kommentieren!