0

FileSystemWatcher次のような状況があります。.NET (C#)のクラスでフォルダーを監視しています。このクラスを使用すると、ファイルが削除されたかどうかがわかりますが、次の動作が必要です。削除をキャンセルしてファイルが削除されないようにし、ファイルを自分の一時ディレクトリに移動して、ユーザーがファイルを復元できるようにします。

そのような動作を実装する可能性はありますか? 私が行かなければならない方法は何ですか?グローバルイベントに参加できますか? 独自のファイル システム ドライバでのみ可能ですか? それともWinAPI機能で自分で削除したことを知ってからファイルを復元する必要がありますCreateFileか?

よろしくお願いいたします。

4

1 に答える 1

4

FileSystemWatcher は、ファイルの削除を傍受するメカニズムを提供せず、何が起こったかを報告するだけです。

問題のファイルのサイズはどれくらいですか? これらのファイルのサイズに応じて、これを達成する (つまり、ハッキングする) 1 つの方法は、メモリやディスクなど、目に見えない場所にファイルをキャッシュすることです。アプリが起動したら、ファイルを実行してキャッシュします (一時フォルダーにコピーするか、メモリに読み込みます)。ファイルが変更または作成されたときにキャッシュを更新し、削除されたときにそれらを復元する方法を提供します。それはきれいではありませんが、それは仕事を成し遂げるでしょう.

于 2013-04-24T08:53:32.523 に答える