1

私は一種の「タグ付け」(私の場合、実際にはタグではありません)Windowsファイル、説明などを入れるためのプログラムを作成しようとしています。言語:C#。これらすべての「タグ付き」ファイルを監視し、名前が変更、移動、削除された場合に通知を受け取る方法について、ある程度のガイドラインが必要です。そして、Windows の起動時からユーザーが PC をシャットダウンする瞬間まで、それらを監視したいと考えています。私はこの FileSystemWatcher クラスをチェックしましたが、それでも:

  • 追跡したいすべてのファイルに対して、このクラスの個別のインスタンスを作成することは良い考えですか?
  • この機能のために作成する必要があるのは、実際には Windows サービスですか?

私のアプローチが最善であることについてアドバイスをいただければ幸いです。

4

1 に答える 1

0

FileSystemWatcherディレクトリ (および場合によってはサブディレクトリ) を監視するには、 を使用する必要があります。監視されているディレクトリ内のすべてのファイルへの変更が通知されます。次に、見たい個々のファイルをフィルタリングできます。

FileSystemWatcher監視したい最上位ディレクトリごとに1 つをお勧めします。あなたが見ているなら:

/dir1
/dir1/subdir
/dir1/subdir/sub-subdir
/dir2

次に、2 つのFileSystemWatcherコンポーネントがあります。1 つは 用dir1、もう 1 つは 用です。dir2

Windows サービスは、このツールに適しています。もう 1 つの適切な選択肢は、スケジュールされたタスクとして起動時に実行されるコンソール アプリケーションです。スケジュールされたタスクには、より簡単に開始および停止できるという利点があります。これは、最初の開発に行きたい方法かもしれません。コンソール アプリケーションをサービスに変換するのは非常に簡単です。

于 2013-04-02T13:21:30.150 に答える