可能重复:
How does a Windows antivirus hook into the file access process?
防病毒软件通常通过(可能)拦截对文件系统的调用,扫描目标文件然后允许完成调用来提供“实时”保护。根据观察到的行为,我猜这种情况会在应用程序尝试打开文件句柄进行读取时发生(至少打开一个安装了Sophos的5 gig文件=即时咖啡休息时间)
这究竟是如何实施的?他们实际上是否使用抽象文件系统的驱动程序,或者仅仅是调用API(哪种方法?)将自己注入链中的情况?
是否有任何标准方法可以检测哪些应用正在挂钩?
我已经将.Net标记为我的选择框架,但我怀疑P / Invoke是必需的,所以尽管.Net示例是理想的,但直接的API参考几乎同样好。