Winapi ReadDirectoryChangesW并确定导致更改的进程

Winapi ReadDirectoryChangesW并确定导致更改的进程,winapi,api,filesystems,readdirectorychangesw,Winapi,Api,Filesystems,Readdirectorychangesw,如何确定哪些进程正在更改哪些文件 我确实发现: 但我很好奇最近有没有什么变化?是否还可以使用ReadDirectoryChangesW或其他任何方法来确定哪个进程正在对文件系统进行更改?我不希望编写或使用内核驱动程序。对要跟踪的文件创建安全审计。这些信息将记录在安全事件日志中。虽然可以使用内核驱动程序(例如)找出更改文件的进程,但如果文件夹在网络上共享,并且另一台计算机上的进程通过网络修改文件,则识别该进程始终会出现问题。 在这种情况下,即使是内核驱动程序也会将网络共享进程识别为访问文件的进程

如何确定哪些进程正在更改哪些文件

我确实发现:


但我很好奇最近有没有什么变化?是否还可以使用
ReadDirectoryChangesW
或其他任何方法来确定哪个进程正在对文件系统进行更改?我不希望编写或使用内核驱动程序。

对要跟踪的文件创建安全审计。这些信息将记录在安全事件日志中。

虽然可以使用内核驱动程序(例如)找出更改文件的进程,但如果文件夹在网络上共享,并且另一台计算机上的进程通过网络修改文件,则识别该进程始终会出现问题。
在这种情况下,即使是内核驱动程序也会将网络共享进程识别为访问文件的进程,而不是另一台计算机上的进程。

我似乎还不能对此发表评论。我对您在文件或路径上创建安全审计的Python代码感兴趣。如果它弄乱了系统安全事件日志,那就有点遗憾了,但你不能拥有所有的东西!:-)


到目前为止,在进行更改时,我一直在使用GetForeGroundIndow来最终获得相关的进程。它只适用于用户发起的更改,但这主要是我感兴趣的。除了后台进程之外,唯一的小问题是,有时一个进程只是为了完成一项任务而产生的(比如批处理文件),而当您想了解更多有关它的信息时,它就不存在了(比如是什么进程产生的)。尽管如此,我认为即使进行安全审计也会出现问题。

在我的情况下,我对网络文件夹不感兴趣,但我理解这会是一个问题的原因。我是否可以创建顶级驱动器的安全审计,如C:\?谢谢-我最终使用了此解决方案,而且效果非常好。如果有人感兴趣,我可以分享一些Python代码。@options无政府主义者我对这段代码感兴趣。请分享。