阅读:1938回复:13
请教各位路过的: 文件隐藏过滤驱动在vista起不到作用问题实现隐藏文件夹的过滤驱动, 在XP下完全OK. 但用到vista上时, 可以成功安装, 并可以成功挂接到某一个分区, 但是却起不到隐藏文件的作用. 经DebugView观察, 发现拦截不到被挂接分区上的目录控制消息, 拦截的全是系统盘的消息, 即使我正在打开的是另一个已经被挂接的分区(或里面的某一个文件夹), 系统盘的文件夹也不能隐藏. 应该不会出现这样的问题,请大家赐教一下, 是不是我什么地方没弄明白 . |
|
最新喜欢:yuanyu... |
沙发#
发布于:2007-08-29 17:02
XP和2000判断FileInformationClass == FileBothDirectoryInformation,
VISTA 下FileInformationClass ==FileIdBothDirectoryInformation ,做个判断,就可以了 |
|
板凳#
发布于:2007-08-29 17:30
太谢谢了
|
|
地板#
发布于:2007-08-29 17:35
我代楼主谢谢zhangleierli!
|
|
地下室#
发布于:2007-08-30 09:27
我试过了,好像还是不行. 楼上的几位,你们试过可以吗?
|
|
5楼#
发布于:2007-08-30 10:10
哈哈,没有Vista怎么试啊
|
|
6楼#
发布于:2007-08-31 12:48
vista可以了,谢谢!
|
|
7楼#
发布于:2007-11-27 11:54
引用第5楼boywhp于2007-08-30 10:10发表的 : 你好,我也遇到类似问题,怎么解决的,可以说一下吗?谢谢 |
|
|
8楼#
发布于:2007-11-27 13:41
不知道大家有没有试过,Winxp下面遍历文件夹首先会查询一个,然后再来一链,还有就再继续,最后到没有文件为止。如果隐藏第一个被查询的,应该是不会成功的,至少在minifilter中是不会成功的。即便把struct的size设置为0,return的information也是0,照样不能完全隐藏文件。 呵呵 一个Bug, 大家遇到没有?
|
|
9楼#
发布于:2007-11-27 15:53
引用第8楼clarence于2007-11-27 13:41发表的 : 和legacy fs filter一样,如果所有项都要被隐藏,那需要你把该请求下发,然后把结果过滤后再返回给上层,而不是直接修改size=0。 |
|
10楼#
发布于:2007-11-27 16:16
是在完成例程里面的,只返回了单独一个文件信息,而我们希望隐藏它,这个文件信息是没法直接用offset方式去掉,这是的上层是需要这个信息的,如果添没有那不会再去查询下面的文件,所以这个信息必须返回。
解决的方法要自己重新做IRP下去。 引用第9楼tooflat于2007-11-27 15:53发表的 : |
|
11楼#
发布于:2007-11-27 16:20
引用第6楼focusbh99于2007-08-31 12:48发表的 : 你好,我也遇到类似问题,怎么解决的,可以说一下吗?谢谢 |
|
|
12楼#
发布于:2007-11-27 16:31
自己做IRP继续查询,直到遇到不是自己的给它返回,没了就会STATUS_NO_MORE_FILES.
困扰我一段时间的一个问题~ 引用第11楼rsman于2007-11-27 16:20发表的 : |
|
13楼#
发布于:2008-02-20 15:26
请教路过的:那PFILE_BOTH_DIR_INFORMATION也要改成PFILE_ID_BOTH_DIR_INFORMATION吗?急问,谢谢!
|
|