For a βnormalβ approach, it basically comes down to FindFirstFile / FindNextFile , you really don't get much faster than that ... and it's not super-turbo-fast.
If you really need speed, look through the MFT manually, but be aware that this requires administrator privileges and is prone to interruption when updating NTFS (and, oh, yes, it will not work for file systems other than NTFS). Maybe you should take a look at this code , which has USN and MFT.
However, there may be another solution. If your application is running continuously and you need to pick up the changes, you can start with a single slow pass FindFirstFile / FindNextFile , and then use the directory change notification support to get update information ... that works for limited users, and is independent of file system structures.
snemarch
source share