FileSystemWatcher and ReadDirectoryChangesW vs. CBFS Filter
CBFS Filter is a software development toolkit that allows you to monitor and control filesystem activity, track file and directory operations, alter file data, encrypt files, and much more. CBFS Filter includes a .NET demo project that emulates FileSystemWatcher, so you can combine the simplicity of FileSystemWatcher with the power of CBFS Filter.
|Filesystem support||NTFS or network drive. No FAT or FAT32 support.||Any filesystem including any local or network filesystem.|
|Permissions required||SeBackupPrivilege and read access to the folder being monitored. The SeBackupPrivilege permission is usually available for administrator accounts only.||None. CBFS Filter doesn't require any special permissions and can be run under limited accounts. Installation of the CBFS Filter driver requires administrative rights.|
|Windows security restrictions||Followed. You won't get proper notification on files you don't have access to.||Bypassed by the driver. Your application gets notifications about all file and directory events and doesn't care about security permissions set on files and directories.|
|Operation mode||Asynchronous (you only get notifications).||Synchronous or Asynchronous (the former allows you to intercept the request and modify it or prevent it from being processed).|
|Types of events tracked||Creation, Deletion, Modification, Renaming.||All types of filesystem events (including access and directory enumeration).|
|Reliability||Not reliable (some notifications can be omitted or lost).||Reliable (you get notifications about all operations that happen while your application is running).|
We appreciate your feedback. If you have any questions, comments, or suggestions about this article please contact our support team at firstname.lastname@example.org.