I don't know how to monitor a single file, but I know Windows has API for monitoring changes in a directory.
- FindFirstChangeNotification
- FindNextChangeNotification
- FindCloseChangeNotification
The TShellChangeNotifier component implements these APIs, and is very easy to use.
The TShellChangeNotifier component is part of the Shell Controls package, which is shipped with Delphi but is not installed by default. When you install the Shell Controls package, the components will appear in the Samples palette.