Data->Iopb->Parameters.Create.Options & FILE_DIRECTORY_FILE 判断是否为路径

  如何在minifilter 判断操作的文件对象是目录还是文件呢? 

   有很多人发现答案是 Data->Iopb->Parameters.Create.Options &  FILE_DIRECTORY_FILE 是否成立

   不过也有很多人发现,上面的方法并不能很好的工作,有时候操作的对象是目录,上面的判断却没有成立。

----------------------------------------------------

原因是:

当 IRP_MJ_CREATE 操作创建目录的时候,一定要设置 FILE_DIRECTORY_FILE 标志,打开目录的时候,却不需要。

因此在打开目录的时候,上面的判断方法就不能够很好的工作。


如何设置了  FILE_DIRECTORY_FILE 标志去打开普通的文件,则操作会失败。


---------------------------------------------------

FltIsDirectory 可以很好的解决这个问题,不过需要在IRP_MJ_CREATE 的 PostOperation 中调用。



你可能感兴趣的:(Data->Iopb->Parameters.Create.Options & FILE_DIRECTORY_FILE 判断是否为路径)