NotifyFilters.FileName および NotifyFilters.DirectoryName フィルターを使用して、ファイル/ディレクトリの作成/削除イベントを監視するために FileSystemWatcher を使用しているアプリケーションを開発しています。また、IncludeSubdirectories を true に設定しました
これを使用して、Windows エクスプローラーでフォルダーをコピーすると、その新しいフォルダーのすべてのサブアイテムと新しいフォルダー自体の作成イベントが取得されます。ただし、Windows エクスプローラーで (サブ項目を含む) フォルダーを削除し、Windows エクスプローラーでその操作を「元に戻す」と、サブ項目ではなく、フォルダーの作成イベントのみが取得されます。
サブアイテムがその時点で存在しない可能性があるため、単純に Directory.GetFiles() を実行することはできません。また、ファイルの数/サイズによっては、元に戻す操作に時間がかかる場合があるため、後でディスパッチすることもできません。完了するまでに長い時間がかかり、発送をどれだけ遅らせるかわかりません.
NotifyFilters.Attributes フラグもリッスンすると、元に戻す操作のすべてのサブアイテムに対して ResourceChanged イベントが発生することに気付きましたが、ResourceChanged イベントは他の多くの状況で発生します。決定的な創造イベントを探しています。
助言がありますか?