Warten Sie, bis die Datei vollständig geschrieben wurde

Wenn eine Datei erstellt wird (FileSystemWatcher_Created) in ein Verzeichnis kopiere ich es in ein anderes. Aber wenn ich eine große (> 10 MB) Datei erstelle, kann sie nicht kopiert werden, da der Kopiervorgang bereits beginnt, wenn die Datei noch nicht fertig ist.
Dies bewirktDie Datei kann nicht kopiert werden, da sie von einem anderen Prozess verwendet wird aufgezogen werden. ; (
Irgendeine Hilfe?

class Program
{
    static void Main(string[] args)
    {
        string path = @"D:\levan\FolderListenerTest\ListenedFolder";
        FileSystemWatcher listener; 
        listener = new FileSystemWatcher(path);
        listener.Created += new FileSystemEventHandler(listener_Created);
        listener.EnableRaisingEvents = true;

        while (Console.ReadLine() != "exit") ;
    }

    public static void listener_Created(object sender, FileSystemEventArgs e)
    {
        Console.WriteLine
                (
                    "File Created:\n"
                   + "ChangeType: " + e.ChangeType
                   + "\nName: " + e.Name
                   + "\nFullPath: " + e.FullPath
                );
        File.Copy(e.FullPath, @"D:\levan\FolderListenerTest\CopiedFilesFolder\" + e.Name);
        Console.Read();
    }
}

Antworten auf die Frage(9)

Ihre Antwort auf die Frage