如何知道在TJvChangeNotify (JEDI)或TShellChangeNotifier的更改事件上更改了什么文件(它的名称)?
谢谢!
两个组件都使用FindFirstChangeNotification
来监视更改。如其文档所示,该函数不提供触发通知的信息。因此,要找出使用这些组件发生了什么,唯一可能的方法是保留被监视文件夹的快照,并在发生更改后执行比较。
如果您决定按照FindFirstChangeNotification
文档的建议使用ReadDirectoryChangesW
,请参阅此答案。或者,如果您决定使用SHChangeNotifyRegister
,请参阅本文。