Freigeben über


NotifyFilters-Enumeration

Gibt die Änderungen an, die in einer Datei oder einem Ordner überwacht werden sollen.

Diese Enumeration verfügt über ein FlagsAttribute -Attribut, das die bitweise Kombination der Memberwerte zulässt.

Namespace: System.IO
Assembly: System (in system.dll)

Syntax

'Declaration
<FlagsAttribute> _
Public Enumeration NotifyFilters
'Usage
Dim instance As NotifyFilters
[FlagsAttribute] 
public enum NotifyFilters
[FlagsAttribute] 
public enum class NotifyFilters
/** @attribute FlagsAttribute() */ 
public enum NotifyFilters
FlagsAttribute 
public enum NotifyFilters

Member

  Membername Beschreibung
Attributes Die Attribute der Datei oder des Ordners. 
CreationTime Der Zeitpunkt der Erstellung der Datei oder des Ordners. 
DirectoryName Der Name des Verzeichnisses. 
FileName Der Name der Datei. 
LastAccess Das Datum des letzten Öffnens der Datei oder des Ordners. 
LastWrite Das Datum, an dem zuletzt in die Datei oder den Ordner geschrieben wurde. 
Security Die Sicherheitseinstellungen der Datei oder des Ordners. 
Size Die Größe der Datei oder des Ordners. 

Hinweise

Sie können die Member dieser Enumeration kombinieren, um mehrere Arten von Änderungen gleichzeitig zu überwachen. Sie können z. B. Änderungen an der Größe einer Datei oder eines Ordners und an den Sicherheitseinstellungen überwachen. Dadurch wird immer dann ein Ereignis ausgelöst, wenn an der Größe oder den Sicherheitseinstellungen einer Datei oder eines Ordners Änderungen vorgenommen werden.

Beispiel

Im folgenden Beispiel wird ein FileSystemWatcher erstellt, mit dem ein zur Laufzeit angegebenes Verzeichnis überwacht werden soll. In der Komponente wird festgelegt, dass Textdateien im Verzeichnis auf Änderungen in Bezug auf die Uhrzeit von LastWrite und LastAccess sowie das Erstellen, Löschen oder Umbenennen überwacht werden. Beim Ändern, Erstellen oder Löschen einer Datei wird der Dateipfad an die Konsole ausgegeben. Beim Umbenennen einer Datei werden der alte und der neue Pfad an die Konsole ausgegeben.

Verwenden Sie für dieses Beispiel den System.Diagnostics-Namespace und den System.IO-Namespace.

Public Class Watcher
    
    Public Shared Sub Main()
    
         Run()
  
    End Sub

    <PermissionSet(SecurityAction.Demand, Name:="FullTrust")> _
    Private Shared Sub Run

      Dim args() As String = System.Environment.GetCommandLineArgs()
        ' If a directory is not specified, exit the program.
        If args.Length <> 2 Then
            ' Display the proper way to call the program.
            Console.WriteLine("Usage: Watcher.exe (directory)")
            Return
        End If
        
        ' Create a new FileSystemWatcher and set its properties.
        Dim watcher As New FileSystemWatcher()
        watcher.Path = args(1)
        ' Watch for changes in LastAccess and LastWrite times, and
        ' the renaming of files or directories. 
        watcher.NotifyFilter = (NotifyFilters.LastAccess Or NotifyFilters.LastWrite Or NotifyFilters.FileName Or NotifyFilters.DirectoryName)
        ' Only watch text files.
        watcher.Filter = "*.txt"
        
        ' Add event handlers.
        AddHandler watcher.Changed, AddressOf OnChanged
        AddHandler watcher.Created, AddressOf OnChanged
        AddHandler watcher.Deleted, AddressOf OnChanged
        AddHandler watcher.Renamed, AddressOf OnRenamed
        
        ' Begin watching.
        watcher.EnableRaisingEvents = True
        
        ' Wait for the user to quit the program.
        Console.WriteLine("Press 'q' to quit the sample.")
        While Chr(Console.Read()) <> "q"c
        End While
    End Sub
     
    ' Define the event handlers.
    Private Shared Sub OnChanged(source As Object, e As FileSystemEventArgs)
        ' Specify what is done when a file is changed, created, or deleted.
        Console.WriteLine("File: " & e.FullPath & " " & e.ChangeType)
    End Sub    
    
    Private Shared Sub OnRenamed(source As Object, e As RenamedEventArgs)
        ' Specify what is done when a file is renamed.
        Console.WriteLine("File: {0} renamed to {1}", e.OldFullPath, e.FullPath)
    End Sub
    
End Class
public class Watcher
{

    public static void Main()
    {
    Run();

    }

    [PermissionSet(SecurityAction.Demand, Name="FullTrust")]
    public static void Run()
    {
        string[] args = System.Environment.GetCommandLineArgs();
 
        // If a directory is not specified, exit program.
        if(args.Length != 2)
        {
            // Display the proper way to call the program.
            Console.WriteLine("Usage: Watcher.exe (directory)");
            return;
        }

        // Create a new FileSystemWatcher and set its properties.
        FileSystemWatcher watcher = new FileSystemWatcher();
        watcher.Path = args[1];
        /* Watch for changes in LastAccess and LastWrite times, and 
           the renaming of files or directories. */
        watcher.NotifyFilter = NotifyFilters.LastAccess | NotifyFilters.LastWrite 
           | NotifyFilters.FileName | NotifyFilters.DirectoryName;
        // Only watch text files.
        watcher.Filter = "*.txt";

        // Add event handlers.
        watcher.Changed += new FileSystemEventHandler(OnChanged);
        watcher.Created += new FileSystemEventHandler(OnChanged);
        watcher.Deleted += new FileSystemEventHandler(OnChanged);
        watcher.Renamed += new RenamedEventHandler(OnRenamed);

        // Begin watching.
        watcher.EnableRaisingEvents = true;

        // Wait for the user to quit the program.
        Console.WriteLine("Press \'q\' to quit the sample.");
        while(Console.Read()!='q');
    }

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

    private static void OnRenamed(object source, RenamedEventArgs e)
    {
        // Specify what is done when a file is renamed.
        Console.WriteLine("File: {0} renamed to {1}", e.OldFullPath, e.FullPath);
    }
}
public ref class Watcher
{
private:
   // Define the event handlers.
   static void OnChanged( Object^ /*source*/, FileSystemEventArgs^ e )
   {
      // Specify what is done when a file is changed, created, or deleted.
      Console::WriteLine( "File: {0} {1}", e->FullPath, e->ChangeType );
   }

   static void OnRenamed( Object^ /*source*/, RenamedEventArgs^ e )
   {
      // Specify what is done when a file is renamed.
      Console::WriteLine( "File: {0} renamed to {1}", e->OldFullPath, e->FullPath );
   }

public:
   [PermissionSet(SecurityAction::Demand, Name="FullTrust")]
   int static run()
   {
      array<String^>^args = System::Environment::GetCommandLineArgs();

      // If a directory is not specified, exit program.
      if ( args->Length != 2 )
      {
         // Display the proper way to call the program.
         Console::WriteLine( "Usage: Watcher.exe (directory)" );
         return 0;
      }

      // Create a new FileSystemWatcher and set its properties.
      FileSystemWatcher^ watcher = gcnew FileSystemWatcher;
      watcher->Path = args[ 1 ];

      /* Watch for changes in LastAccess and LastWrite times, and 
          the renaming of files or directories. */
      watcher->NotifyFilter = static_cast<NotifyFilters>(NotifyFilters::LastAccess |
            NotifyFilters::LastWrite | NotifyFilters::FileName | NotifyFilters::DirectoryName);

      // Only watch text files.
      watcher->Filter = "*.txt";

      // Add event handlers.
      watcher->Changed += gcnew FileSystemEventHandler( Watcher::OnChanged );
      watcher->Created += gcnew FileSystemEventHandler( Watcher::OnChanged );
      watcher->Deleted += gcnew FileSystemEventHandler( Watcher::OnChanged );
      watcher->Renamed += gcnew RenamedEventHandler( Watcher::OnRenamed );

      // Begin watching.
      watcher->EnableRaisingEvents = true;

      // Wait for the user to quit the program.
      Console::WriteLine( "Press \'q\' to quit the sample." );
      while ( Console::Read() != 'q' )
         ;
   }
};

int main() {
   Watcher::run();
}
public class Watcher
{
    public static void main(String[] args1)
    {
    Run();
    } 

    /** @attribute PermissionSet(SecurityAction.Demand, Name="FullTrust")
     */
    public static void Run()
    {
        String args[] = System.Environment.GetCommandLineArgs();

        // If a directory is not specified, exit program.
        if (args.length != 2) {

            // Display the proper way to call the program.
            Console.WriteLine("Usage: Watcher.exe (directory)");
            return;
        }

        // Create a new FileSystemWatcher and set its properties.
        FileSystemWatcher watcher = new FileSystemWatcher();
        watcher.set_Path(args[1]);

        /* Watch for changes in LastAccess and LastWrite times, and 
           the renaming of files or directories.
         */
        watcher.set_NotifyFilter
            (NotifyFilters.LastAccess |NotifyFilters.LastWrite |
            NotifyFilters.FileName | NotifyFilters.DirectoryName);

        // Only watch text files.
        watcher.set_Filter("*.txt");

        // Add event handlers.
        watcher.add_Changed(new FileSystemEventHandler(OnChanged));
        watcher.add_Created(new FileSystemEventHandler(OnChanged));
        watcher.add_Deleted(new FileSystemEventHandler(OnChanged));
        watcher.add_Renamed(new RenamedEventHandler(OnRenamed));

        // Begin watching.
        watcher.set_EnableRaisingEvents(true);

        // Wait for the user to quit the program.
        Console.WriteLine("Press \'q\' to quit the sample.");
        while ((Console.Read() != 'q')) {

        }
    }

    // Define the event handlers.
    private static void OnChanged(Object source,FileSystemEventArgs e)
    {
        // Specify what is done when a file is changed, created, or deleted.
        Console.WriteLine(("File: " + e.get_FullPath() + " " 
            + e.get_ChangeType()));
    } //OnChanged

    private static void OnRenamed(Object source, RenamedEventArgs e)
    {
        // Specify what is done when a file is renamed.
        Console.WriteLine("File: {0} renamed to {1}",
            e.get_OldFullPath(),e.get_FullPath());
    } //OnRenamed
} //Watcher

Plattformen

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

System.IO-Namespace
FileSystemEventArgs-Klasse
FileSystemEventHandler-Delegat
FileSystemWatcher-Klasse
InternalBufferOverflowException-Klasse
RenamedEventArgs
RenamedEventHandler
WaitForChangedResult
WatcherChangeTypes