阅读:1617回复:6
关于IFSFN_FINDOPEN的问题
我在写驱动时碰到一个问题,我想在Win98下通过hook系统的FileSystemApiHookFunction来屏蔽名为aa的文件,假如aa为
IFSFN_FINDOPEN所返回的文件(可以通过_WIN32_FIND_DATA获得),那么我需要调用IFSFN_FINDNEXT去查找下一个,但是问题出现了,我怎么判断是否还有下一个文件,如果有,则调用IFSFN_FINDNEXT是正确的,如果没有下一个文件,则调用IFSFN_FINDNEXT会出现错误,请教大家,如何处理 case IFSFN_FINDOPEN: finddata = (_WIN32_FIND_DATA *) irq->ir_data; filname = get_filename_from_finddata(); if(filename != \"aa\") return ok; else { if have next file ?? { (*PrevIFSHookProc)(pfn,IFSFN_FINDNEXT,Drive,Res,Page,irq); finddata = (_WIN32_FIND_DATA *) irq->ir_data; } else { (*PrevIFSHookProc)(pfn,IFSFN_FINDCLOSE,Drive,Res,Page,irq); } } |
|
最新喜欢:PolomW...
|
沙发#
发布于:2003-10-13 17:21
调用(*PrevIFSHookProc)(...)看其返回值。
|
|
板凳#
发布于:2003-10-13 17:24
else老大可否说的详细些,谢了
|
|
|
地板#
发布于:2003-10-13 17:54
retval=(*PrevIFSHookProc)(...)
如果Retval不等于ERROR_SUCCESS说明还有 |
|
地下室#
发布于:2003-10-16 11:53
else谢了,win98下怎么安装并启动静态驱动阿
|
|
|
5楼#
发布于:2003-10-17 00:04
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\VXD\\XXX]
\"StaticVxD\"=\"XXX.VXD\" |
|
6楼#
发布于:2003-10-17 13:56
加载静态VXD也可以用System.ini文件
在[386Enhance]段加上: device=VXDName.vxd 就可以静态加载了 |
|