Есть ли что-то вроде inotify в Windows?

В ОС Linux есть подсистема ionotify, которая уведомляет приложение об изменениях в файловой системе.

Однако Я в основном пользователь Windows, поэтому мне было интересно, есть ли подобный способ мониторинга изменений файловой системы?

92
задан xskxzr 24 May 2018 в 11:54
поделиться

4 ответа

См. API FindFirstChangeNotification или его аналог в .NET FileSystemWatcher

32
ответ дан 24 November 2019 в 06:34
поделиться

Если вы используете .net , используйте FileSystemWatcher . Дополнительная информация здесь: http://msdn.microsoft.com/en-us/library/system.io.filesystemwatcher.aspx

Если вы используете C , используйте FindFirstChangeNotification , FindNextChangeNotification , ReadDirectoryChangesW . Дополнительная информация здесь: http://msdn.microsoft.com/en-us/library/aa365261 (VS.85) .aspx

В OSX соответствующим api является fsevents api.

Все они тонко отличаются друг от друга, и все они имеют сомнительную надежность в крайних случаях. В общем, вы не можете полагаться на эти API для получения полного представления обо всех изменениях в 100% случаев. Большинство людей, использующих мониторинг файловой системы, сочетают его с периодическим сканированием, чтобы компенсировать потерянную или неполную информацию из push api.

42
ответ дан 24 November 2019 в 06:34
поделиться

JNotify или FileMon от Microsoft.

11
ответ дан 24 November 2019 в 06:34
поделиться

Я немного поискал, кажется, припоминаю, что видел что-то подобное для Windows. Там есть FileSystemWatcher для .NET. Он в основном для NT или XP и вперед.

1
ответ дан 24 November 2019 в 06:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: