Freigeben über


SO WIRD'S GEMACHT: Erstellen von Handlern für Dateisystemereignisse

Dieser Dokumentation für die Vorschau nur ist und in späteren Versionen geändert. Leere Themen wurden als Platzhalter eingefügt.]

Die FileSystemWatcher-Komponente löst abhängig von der Arten von Änderungen, die im Verzeichnis auftreten überwachten vier Ereignisse. Diese Ereignisse sind:

  • Created – wird ausgelöst, wenn ein Verzeichnis oder eine Datei erstellt wird.

  • Deleted – wird ausgelöst, wenn ein Verzeichnis oder eine Datei gelöscht wird.

  • Renamed – wird ausgelöst, wenn der Name eines Verzeichnisses oder einer Datei geändert wird.

  • Changed – ausgelöst, wenn Änderungen der Größe,, letzten Schreiben von Systemattributen Zeit, Zeit des letzten Zugriffs oder NTFS-Sicherheit Berechtigungen eines Verzeichnisses oder einer Datei.

    Hinweis

    NotifyFilter -Eigenschaft können Sie den Umfang der Ereignisse beschränken Changed-Ereignis auslöst.Weitere Informationen finden Sie unter SO WIRD'S GEMACHT: Konfigurieren von Instanzen von FileSystemWatcher-Komponenten.

Für jedes dieser Ereignisse können Sie Handler definieren, die automatisch Methoden im Code, aufrufen tritt eine Änderung. Ein Ereignishandler ist eine Methode, die an ein Ereignis für eine Komponente, eine Form oder ein Steuerelement gebunden ist. Jeder Ereignishandler bietet zwei Parameter zur ordnungsgemäßen Behandlung des Ereignisses – der sender, der einen Objektverweis auf das für das Ereignis verantwortliche Objekt bereitstellt Parameter und den e Parameter, der ein Objekt zum Darstellen des Ereignisses und dessen Informationen bereitstellt.

Es gibt mehrere Möglichkeiten, die einen Ereignishandler für eine Instanz der Komponente FileSystemWatcher erstellen, aber am einfachsten Visual Studio Großteil des Codes für Sie automatisch erstellen lassen. Wenn Sie die Komponenteninstanz FileSystemWatcher im Designer doppelklicken, wird Visual Studio Öffnet das Code-Editor und erstellt einen Ereignishandler für das Ereignis Changed und ihm aufgerufene leere Prozedur. Anschließend können Sie bei der Verarbeitung eingeben, die Sie in der Prozedur auftreten möchten. Sie können auch eigene Handler andere Ereignisse behandeln erstellen.

Weitere Informationen über Ereignishandler finden Sie unter Behandeln und Auslösen von Ereignissen.

So erstellen Sie einen Standardhandler für das Changed-Ereignis

  1. Erstellen Sie eine Instanz der Komponente FileSystemWatcher. Weitere Informationen finden Sie unter SO WIRD'S GEMACHT: Erstellen von Instanzen von FileSystemWatcher-Komponenten.

  2. Legen Sie die erforderlichen Eigenschaften für die Komponente. Weitere Informationen finden Sie unter SO WIRD'S GEMACHT: Konfigurieren von Instanzen von FileSystemWatcher-Komponenten.

  3. Der Designer doppelklicken Sie auf die FileSystemWatcher-Komponente, für die Sie einen Ereignishandler erstellen möchten.

    Hinweis

    Der Code-Editor angezeigt wird und zwei Elemente Code hinzugefügt werden: der Handler, der erstellt und registriert einen Delegaten, und die Prozedur aufruft, und eine leere Prozedur für das Changed-Ereignis.

  4. Definieren Sie in der leeren Prozedur für das Ereignis Changed Code, der Aktion werden, wenn dieses Ereignis aufgerufen wird.

So erstellen Sie einen Handler für einen FileSystemWatcher Ereignis

  1. Erstellen Sie eine Instanz der Komponente FileSystemWatcher. Weitere Informationen finden Sie unter SO WIRD'S GEMACHT: Erstellen von Instanzen von FileSystemWatcher-Komponenten.

  2. Legen Sie die erforderlichen Eigenschaften für die Komponente. Weitere Informationen finden Sie unter SO WIRD'S GEMACHT: Konfigurieren von Instanzen von FileSystemWatcher-Komponenten.

  3. Erstellen Sie die entsprechende Prozedur, die aufgerufen werden und definieren Sie den Code, durch die Einträge verarbeitet werden sollen. Das folgende Beispiel zeigt einen Ereignishandler für das Ereignis Changed.

                                Private
                                Sub myWatcher_Changed(ByVal sender As System.Object,
       ByVal e As System.IO.FileSystemEventArgs)
        Dim pathChanged AsString
        pathChanged = e.FullPath
    EndSub
    
                                private
                                void myWatcher_Changed(object sender,
        System.IO.FileSystemEventArgs e)
        {
            string pathChanged = e.FullPath;
        }
    
    
  4. Das Ereignis für Ihre Komponente eine Instanz von FileSystemEventHandler zuweisen. Dieses Beispiel fügt den in Schritt 3 definierten Changed-Ereignishandler hinzu.

                                AddHandler myWatcher.Changed,
       New System.IO.FileSystemEventHandler(AddressOfMe.myWatcher_Changed)
    
            myWatcher.Changed +=
               new System.IO.FileSystemEventHandler(this.myWatcher_Changed);
    

Siehe auch

Aufgaben

SO WIRD'S GEMACHT: Erstellen von Instanzen von FileSystemWatcher-Komponenten

SO WIRD'S GEMACHT: Konfigurieren von Instanzen von FileSystemWatcher-Komponenten

Konzepte

Einführung in die Überwachung Dateisystemereignisse