(0) exportieren Drucken
Alle erweitern

FileSystemWatcher.Created-Ereignis

Tritt ein, wenn im angegebenen Path eine Datei oder ein Verzeichnis erstellt wird.

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

public event FileSystemEventHandler Created
/** @event */
public void add_Created (FileSystemEventHandler value)

/** @event */
public void remove_Created (FileSystemEventHandler value)

JScript unterstützt die Verwendung von Ereignissen, aber nicht die Deklaration von neuen Ereignissen.

Einige allgemeine Vorgänge, z. B. das Kopieren oder Verschieben von Dateien bzw. Verzeichnissen, entsprechen nicht direkt einem Ereignis, führen jedoch zum Auslösen von Ereignissen. Wenn Sie eine Datei oder ein Verzeichnis kopieren, löst das System ein Created-Ereignis in dem Zielverzeichnis für die Datei aus, sofern dieses Verzeichnis überwacht wird. Wenn das Quellverzeichnis zum Zeitpunkt des Kopierens durch eine andere Instanz von FileSystemWatcher überwacht wurde, wird kein Ereignis ausgelöst. Sie erstellen z. B. zwei Instanzen von FileSystemWatcher. Für FileSystemWatcher1 wird die Überwachung von "C:\My Documents" und für FileSystemWatcher2 die Überwachung von "C:\Your Documents" festgelegt. Wenn Sie eine Datei von "My Documents" in "Your Documents" kopieren, wird von FileSystemWatcher2 ein Created-Ereignis ausgelöst, bei FileSystemWatcher1 jedoch nicht. Im Gegensatz zum Kopieren löst das Verschieben einer Datei oder eines Verzeichnisses zwei Ereignisse aus. Wenn Sie in der im vorherigen Beispiel erwähnten Situation eine Datei von "My Documents" nach "Your Documents" verschieben, wird von FileSystemWatcher2 ein Created-Ereignis und von FileSystemWatcher1 ein Deleted-Ereignis ausgelöst.

HinweisHinweis

Häufige Vorgänge in Dateisystemen können mehrere Ereignisse auslösen. Wenn eine Datei z. B. von einem Verzeichnis in ein anderes verschoben wird, werden möglicherweise mehrere OnChanged-Ereignisse und einige OnCreated-Ereignisse sowie OnDeleted-Ereignisse ausgelöst. Das Verschieben einer Datei ist ein komplexer Vorgang, der aus mehreren einfachen Vorgängen besteht und daher mehrere Ereignisse auslöst. Ebenso können einige Anwendungen (z. B. Antivirensoftware) zusätzliche Ereignisse in Dateisystemen auslösen, die von FileSystemWatcher erkannt werden.

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 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

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.

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0
Microsoft führt eine Onlineumfrage durch, um Ihre Meinung zur MSDN-Website zu erfahren. Wenn Sie sich zur Teilnahme entscheiden, wird Ihnen die Onlineumfrage angezeigt, sobald Sie die MSDN-Website verlassen.

Möchten Sie an der Umfrage teilnehmen?
Anzeigen:
© 2014 Microsoft