focusbh99
驱动牛犊
驱动牛犊
  • 注册日期2007-07-04
  • 最后登录2010-01-25
  • 粉丝0
  • 关注0
  • 积分472分
  • 威望68点
  • 贡献值0点
  • 好评度47点
  • 原创分0分
  • 专家分0分
阅读:1938回复:13

请教各位路过的: 文件隐藏过滤驱动在vista起不到作用问题

楼主#
更多 发布于:2007-08-29 15:30



实现隐藏文件夹的过滤驱动, 在XP下完全OK. 但用到vista上时, 可以成功安装, 并可以成功挂接到某一个分区, 但是却起不到隐藏文件的作用. 经DebugView观察, 发现拦截不到被挂接分区上的目录控制消息, 拦截的全是系统盘的消息, 即使我正在打开的是另一个已经被挂接的分区(或里面的某一个文件夹), 系统盘的文件夹也不能隐藏.

应该不会出现这样的问题,请大家赐教一下, 是不是我什么地方没弄明白 .

最新喜欢:

yuanyuanyuanyu...
zhangleierli
驱动小牛
驱动小牛
  • 注册日期2007-01-31
  • 最后登录2017-05-24
  • 粉丝1
  • 关注0
  • 积分3分
  • 威望158点
  • 贡献值0点
  • 好评度146点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2007-08-29 17:02
XP和2000判断FileInformationClass == FileBothDirectoryInformation,

VISTA 下FileInformationClass ==FileIdBothDirectoryInformation ,做个判断,就可以了
boywhp
驱动中牛
驱动中牛
  • 注册日期2007-08-09
  • 最后登录2015-04-24
  • 粉丝2
  • 关注0
  • 积分1105分
  • 威望515点
  • 贡献值0点
  • 好评度254点
  • 原创分1分
  • 专家分0分
板凳#
发布于:2007-08-29 17:30
太谢谢了
strpic
驱动小牛
驱动小牛
  • 注册日期2006-11-01
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望238点
  • 贡献值0点
  • 好评度156点
  • 原创分0分
  • 专家分0分
地板#
发布于:2007-08-29 17:35
我代楼主谢谢zhangleierli!
focusbh99
驱动牛犊
驱动牛犊
  • 注册日期2007-07-04
  • 最后登录2010-01-25
  • 粉丝0
  • 关注0
  • 积分472分
  • 威望68点
  • 贡献值0点
  • 好评度47点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2007-08-30 09:27
我试过了,好像还是不行. 楼上的几位,你们试过可以吗?
boywhp
驱动中牛
驱动中牛
  • 注册日期2007-08-09
  • 最后登录2015-04-24
  • 粉丝2
  • 关注0
  • 积分1105分
  • 威望515点
  • 贡献值0点
  • 好评度254点
  • 原创分1分
  • 专家分0分
5楼#
发布于:2007-08-30 10:10
哈哈,没有Vista怎么试啊
focusbh99
驱动牛犊
驱动牛犊
  • 注册日期2007-07-04
  • 最后登录2010-01-25
  • 粉丝0
  • 关注0
  • 积分472分
  • 威望68点
  • 贡献值0点
  • 好评度47点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2007-08-31 12:48
vista可以了,谢谢!
rsman
驱动小牛
驱动小牛
  • 注册日期2003-01-14
  • 最后登录2016-01-22
  • 粉丝0
  • 关注0
  • 积分969分
  • 威望101点
  • 贡献值0点
  • 好评度92点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2007-11-27 11:54
引用第5楼boywhp于2007-08-30 10:10发表的  :
哈哈,没有Vista怎么试啊


你好,我也遇到类似问题,怎么解决的,可以说一下吗?谢谢
rsman
clarence
驱动牛犊
驱动牛犊
  • 注册日期2006-05-08
  • 最后登录2009-09-30
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望97点
  • 贡献值0点
  • 好评度76点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2007-11-27 13:41
不知道大家有没有试过,Winxp下面遍历文件夹首先会查询一个,然后再来一链,还有就再继续,最后到没有文件为止。如果隐藏第一个被查询的,应该是不会成功的,至少在minifilter中是不会成功的。即便把struct的size设置为0,return的information也是0,照样不能完全隐藏文件。  呵呵  一个Bug, 大家遇到没有?
tooflat
论坛版主
论坛版主
  • 注册日期2002-07-08
  • 最后登录2014-03-11
  • 粉丝2
  • 关注0
  • 积分1007分
  • 威望551点
  • 贡献值3点
  • 好评度476点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2007-11-27 15:53
引用第8楼clarence于2007-11-27 13:41发表的  :
不知道大家有没有试过,Winxp下面遍历文件夹首先会查询一个,然后再来一链,还有就再继续,最后到没有文件为止。如果隐藏第一个被查询的,应该是不会成功的,至少在minifilter中是不会成功的。即便把struct的size设置为0,return的information也是0,照样不能完全隐藏文件。  呵呵  一个Bug, 大家遇到没有?


和legacy fs filter一样,如果所有项都要被隐藏,那需要你把该请求下发,然后把结果过滤后再返回给上层,而不是直接修改size=0。
clarence
驱动牛犊
驱动牛犊
  • 注册日期2006-05-08
  • 最后登录2009-09-30
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望97点
  • 贡献值0点
  • 好评度76点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2007-11-27 16:16
是在完成例程里面的,只返回了单独一个文件信息,而我们希望隐藏它,这个文件信息是没法直接用offset方式去掉,这是的上层是需要这个信息的,如果添没有那不会再去查询下面的文件,所以这个信息必须返回。

解决的方法要自己重新做IRP下去。


引用第9楼tooflat于2007-11-27 15:53发表的  :


和legacy fs filter一样,如果所有项都要被隐藏,那需要你把该请求下发,然后把结果过滤后再返回给上层,而不是直接修改size=0。
rsman
驱动小牛
驱动小牛
  • 注册日期2003-01-14
  • 最后登录2016-01-22
  • 粉丝0
  • 关注0
  • 积分969分
  • 威望101点
  • 贡献值0点
  • 好评度92点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2007-11-27 16:20
引用第6楼focusbh99于2007-08-31 12:48发表的  :
vista可以了,谢谢!

你好,我也遇到类似问题,怎么解决的,可以说一下吗?谢谢
rsman
clarence
驱动牛犊
驱动牛犊
  • 注册日期2006-05-08
  • 最后登录2009-09-30
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望97点
  • 贡献值0点
  • 好评度76点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2007-11-27 16:31
自己做IRP继续查询,直到遇到不是自己的给它返回,没了就会STATUS_NO_MORE_FILES.

困扰我一段时间的一个问题~

引用第11楼rsman于2007-11-27 16:20发表的  :

你好,我也遇到类似问题,怎么解决的,可以说一下吗?谢谢
ctboby
驱动牛犊
驱动牛犊
  • 注册日期2008-01-28
  • 最后登录2008-11-23
  • 粉丝1
  • 关注0
  • 积分10分
  • 威望2点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2008-02-20 15:26
请教路过的:那PFILE_BOTH_DIR_INFORMATION也要改成PFILE_ID_BOTH_DIR_INFORMATION吗?急问,谢谢!
游客

返回顶部