2012-01-06 11 views
2

私はコピーされたファイルを監視するac#アプリケーションを作成していますが、プログラムの目的はファイルがコピーされていることをユーザーに警告することです。変更、作成、削除、または名前変更のイベントは4つしかありませんが、システムにファイルがコピーされたかどうかを知る方法はありますか?C#:ファイルコピー通知

+4

これらの4つのイベントのうちのいくつかは、そのようなコピーで発生します。 – Oded

+0

変更イベントである可能性がありますか? –

+0

あなたはあなたのシステムに他のシステムからコピーしたファイルを監視したいのですが、あなたのシステムのファイルは別のシステムにコピーアウトされていますか? FileSystemWatcherイベントは、ファイルがコピーされたことを通知しません。 –

答えて

1

ファイルをシステムにコピーすると、changeまたはcreateというイベントも発生します。しかし、それが単にアクセスされた場合(それはコピーされたときに起こります)FileSystemWatcherは役に立たないです。

WindowsのAuditing file and folder access機能を使用できます。

0

タスクは意味をなさない。まず、OSレベルでは「コピー」操作はありません。コピーはオープン/リード/クローズ(ソース)+作成/書き込み/クローズ(dest)操作のシーケンスです。さて、たとえそのような操作が存在していたとしても(例えばExplorerにそのような概念がある)、ファイルをアーカイブしてからアーカイブをコピーするのはどうですか?