9

私は教育用のスパイウェア機能を備えたプログラムを作成していますが、ファイルシステムがいつファイルを変更しているのか、どのファイルが変更されているのかをプログラムで知る必要があります。

C ++でそれを行うにはどうすればよいですか?

4

2 に答える 2

10

おそらく Win32 Directory Change Notificationsを探しているでしょう。同じ機能を公開するFileSystemWatcherと呼ばれる .NET API もあります。

リンクされたページは、ファイル システム通知を購読するための良い例です。ファイルシステムの変更へのより低レベルのアクセスについては、 Change Journalsを調べる必要があります。この API は非常に複雑なので、最初のディレクトリ変更通知から始めるのがおそらく最適です。

言及するために、Linux カーネルにはinotifiyと呼ばれるこのためのサブシステムがあります。

于 2012-12-06T13:11:52.653 に答える
9

Windows では、 を参照してSHChangeNotifyRegister()ください。どのような種類の変更が発生したかだけでなく、正確にどのファイルが変更されたかがわかります。

于 2012-12-07T01:29:23.180 に答える