監視されているディレクトリにコピーされたすべてのフォルダに対して起動しFileSystemWatcherたいということがあります。複数のフォルダが、手動で一度にこの監視ディレクトリにコピーされます。OnCreated event
現在、eventコピーされた最初のフォルダーに対してのみ起動しています。
したがって、フォルダー X を監視していて、Windows エクスプローラーでフォルダー A、B、C を選択し、それらを X にコピーするとOnCreated、A に対して起動されますが、B または C に対しては起動されません。
これは、次の設定に使用している私のコードですFileSystemWatcher。
watcher = new System.IO.FileSystemWatcher(watchPath);
watcher.InternalBufferSize = 32768;
watcher.IncludeSubdirectories = true;
watcher.NotifyFilter = NotifyFilters.FileName | NotifyFilters.DirectoryName |
NotifyFilters.CreationTime | NotifyFilters.LastWrite;
watcher.Changed += new FileSystemEventHandler(OnChanged);
watcher.Created += new FileSystemEventHandler(OnCreated);
watcher.EnableRaisingEvents = true;
ここに私のOnCeated方法があります
void OnCeated(object sender, FileSystemEventArgs e)
{
XDocument xmlDoc = BeginImport(e.FullPath);
}
これが、監視対象のディレクトリにコピーされ た最初のフォルダーに対してのみイベントを発生させる理由は何ですか?