leezy
驱动牛犊
驱动牛犊
  • 注册日期2010-01-25
  • 最后登录2010-12-25
  • 粉丝0
  • 关注0
  • 积分12分
  • 威望111点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1398回复:2

初学者的疑问: 关于上下文计数.

楼主#
更多 发布于:2010-01-26 20:21
     在看WDK的ctx源码和WDK文档的时候...我有些地方不是很明白.
    如果FLAGS为FLT_SET_CONTEXT_KEEP_IF_EXISTS,如果已经存在了上下文,那么新的上下文安装会失败,这时如果oldContext设置了,它将接受这个已安装的上下文.那么这个时候,oldContext的计数为几啊??  若为1的话,在Ctx源码中,假若得到的是这个oldContext,那么使用完后它就释放了,即变成了0.那么,如果过滤器被卸载或卷被卸载,FltMgr这时怎么处理呢?单纯地调用FltDeleteContext???如果我的想法没错的话,那么Context的计数应该始终保持为0或1.   求解!ORZZZ
leezy
驱动牛犊
驱动牛犊
  • 注册日期2010-01-25
  • 最后登录2010-12-25
  • 粉丝0
  • 关注0
  • 积分12分
  • 威望111点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2010-01-26 20:24
还是说,对于上面那个情况,oldContext的计数已经先变成2了..
leezy
驱动牛犊
驱动牛犊
  • 注册日期2010-01-25
  • 最后登录2010-12-25
  • 粉丝0
  • 关注0
  • 积分12分
  • 威望111点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2010-01-26 21:14
纠正下1楼最后那里,Context的计数最后应该是1或0..若为1,则FltMgr调用FltDeleteXXContext,若为0,则调用FltDeleteContext...   请教.!!
游客

返回顶部