FltGetFileNameInformation 函数



FltGetFileNameInformation 函数

在Minifilter 中可以使用 FltGetFileNameInformation 来获取文件的名字,但是这个函数在如下几种情况下是不能够工作的:
1. 当前thread 的 TopLevelIrp  不是NULL
2. Page I/O
3. Pre Create 操作中
4. Post Close 操作中

如果成功的调用了 FltGetFileNameInformation 函数, 则需要调用 FltReleaseFileNameInformation.


如果在Post operaton 中调用 FltGetFileNameInformation

1. 如果操作是同步的,函数会成功被调用。 (Create 操作永远都是同步的)

2. FLT_FILE_NAME_INFORMATION 结构是从PagePool 中分配的,不能够在DPC level 访问,因此不能够在DPC Level 调用 FltReleaseFileNameInformation

3. 在 Post operation 通常用 FltDoCompletionProcessingWhenSafe 方法来解决这个问题,不过还是可能由于Thread的 TopLevelIrp  不为 NULL 而失败。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值