私は特定のディレクトリを監視するためにFileSystemWatcher
を使用しています。誰かがファイルに編集を保存するときにはイベントを1つ、ファイルを作成または移動するときには別のイベントを発生させる必要があります。FileSystemWatcherの変更イベントと作成イベントを区別しますか?
移動ファイルの監視は、Deleted
と作成済みイベントの組み合わせを使用して正常に動作します。誰かがファイルに編集内容を保存すると、Changedイベントが実際に発生します。しかし、ファイルを移動するときにChanged
イベントが発生し、それがCreated
とDeletedイベントの処理に干渉します。
基本的に、ユーザーがファイルを移動または作成したときではなく、ユーザーがファイルに編集内容を保存した場合にのみ、Changed
イベントを発生させたいと考えています。 、ないChangeType
Created
(私はそれがChanged
イベントやCreated
イベントが実際にあったかどうかをチェックするためにChangeType
プロパティを使用してみましたが、私の驚きに、ChangeType
Changed
は、移動やファイルを作成してもChangeイベント用に飼育されたはずタイプの1つでなければなりません)。
だから私は、Changeイベントが実際にファイルの編集によってトリガーされていることを確認するのではなく、ファイルの作成または移動する方法がわからない...
任意のアイデア?
ありがとう、良い洞察力。 NofityFilterを使用するだけで、ファイルが削除されたイベントや作成されたイベントを発生させる前に、変更されたイベントが発生しますが、2つのヒントとタイマーを組み合わせて修正できました。あなたが言ったように、汚いですが、それは動作します:-) – Anders
あなたのためにうれしい –