我已经开发了一个DLL库,主要通过使用mhook来拦截对NtQueryInformationFile()
的调用。不幸的是,对文件信息类FileBasicInformation
的调用是通过FastIO调用而不是常规IRP来解决的。因此没有调用我的拦截库。
我想归档特定的应用程序通过更改ChangeTime
,LastAccessTime
,LastWriteTime
和CreationTime
以不同的方式对文件进行排序。
仅在满足一些边界条件时才使用FastIO(而不是IRP)调用,因此我尝试未满足其中一些条件-但失败了。
这些边界条件是
对文件信息类FileBasicInformation
进行缓存对我来说是没有意义的,我无法找到一种方法来拦截库调用以进行(或模拟)上层目标应用程序的异步文件系统操作。
我正在寻找一种方式,即使对于文件信息类FileBasicInformation
,我的DLL库也可以被调用
我不知道如何拦截FastIO调用(并且谷歌搜索没有提供更多信息)。
或者如何满足FastIO边界条件。
有人在这方面有经验,可以给我提示吗?
谢谢。