監視されているディレクトリにコピーされたすべてのフォルダに対して起動し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);
}
これが、監視対象のディレクトリにコピーされ た最初のフォルダーに対してのみイベントを発生させる理由は何ですか?