阅读:1589回复:7
vxd中挂IFS钩子的一个严重问题,讨论一下用户被禁言,该主题自动屏蔽! |
|
沙发#
发布于:2002-11-29 10:58
不用担心IFSMgr_RemoveFileSystemApiHook的问题,系统会等待正在处理的ir都结束,就是说在调用成功的同时,不会有ir再发到你的filter
filemon里的LogMutex, HashMutex, FilterMutex都不是用来同步这个的 另外,RELEASE的VXD并不建议使用IFSMgr_RemoveFileSystemApiHook,2K下也一样,如果想让Filter失效,只需设置个Disable变量就可以了 |
|
板凳#
发布于:2002-11-29 12:41
用户被禁言,该主题自动屏蔽! |
|
地板#
发布于:2002-11-29 13:22
一般来说调试的时候做成动态vxd,在SYS_DYNAMIC_DEVICE_EXIT中调用这个函数,而商品化的vxd最好做成静态vxd。
执行数据修改的钩子调用该函数不安全是很明显的,例如如果vxd实现的是文件压缩功能,当一个文件被打开,数据被读出并通过Filter解压,但是在文件内容被修改写入之前,调用了IFSMgr_RemoveFileSystemApiHook,这时候写入的数据就会是没有压缩的数据,文件就会损坏。象这种情况必须等待所有打开的压缩文件句柄被完全关闭,才能调用该函数。 其它的情况类似(象修改了文件大小、虚拟了文件handle等等),在2000下这种情况更为复杂,所以2000下更不推荐动态的Filter |
|
地下室#
发布于:2002-11-29 13:25
能不能给点分啊:)
在这回答了这么多问题,居然一分都没有,好伤心啊~555~~ |
|
5楼#
发布于:2002-11-29 15:08
用户被禁言,该主题自动屏蔽! |
|
6楼#
发布于:2002-11-29 15:56
谢谢!:)
这个问题不是很明白,你指的初始化是什么?系统完全初始化又是指什么? |
|
7楼#
发布于:2002-11-30 21:45
^_^,给分了.呵呵. ID设置为比IFSMGR大一点即可。 |
|
|