2017-08-10 112 views
0

我完全陌生的微过滤驱动程序。事实上,对于Windows开发来说是新的。我想创建一个微型过滤器驱动程序,将它附加到我的本地磁盘之一(如D驱动器),并过滤来自该驱动器中文件的READ调用。如何使用minifilter驱动程序过滤读取调用?

经过这么多的努力,我以某种方式安装了Visual Studio 2013,然后安装了WDK 8.然后我拿了minispy example。在更改了该项目的一些设置后,我能够成功构建项目。

问题是,无论何时运行minispy.exe,它都只会筛选IRP_MJ_CREATE调用并将其记录在终端或文件中。我在代码中找不到任何地方提到它只过滤IRP_MJ_CREATE调用。

如果有人能提供一个微过滤器来过滤掉某个特定驱动器的IRP_MJ_CREATE调用,这将非常有用。

在此先感谢!

回答

0

在minispy示例代码中,文件Registration Data.c定义了一个回调结构,告诉过滤器管理器调用哪些操作。对于minispy,这设置为每个预操作调用SpyPreOperationCallback,包括IRP_MJ_CREATE。

它应该记录的不仅仅是创建操作。也许它不附在您感兴趣的音量上?

如果您只想过滤来自一个驱动器的呼叫,有几种方法可以做到这一点。您只能将过滤器附加到您感兴趣的驱动器上(请参阅fltmc attach命令行选项。您也可以将过滤器编码为自动附加到某些卷,并且您还可以通过使用FltGetFileNameInformation获取文件名以及决定是否登录它

哪一个对你来说将取决于你想如何使用它

相关问题