阅读:1298回复:12
在MJ_Create里面隐藏某些文件,页错误发生。
我在MJ_CREATE里面取得当前文件的名字,并且成功取得了。取得之后呢,我判断这个文件名是否在我的filter列表里面,如果在,就结束IRP并返回create/open不成功信息。
请看我的这一部处理: if(在列表中) { ExFreePoolWithTag(nameInfo, SFLT_POOL_TAG); //释放已经打开的文件句柄,是否错误? if(irpSp->FileObject != NULL || irpSp->FileObject != (PFILE_OBJECT)-1) ObDereferenceObject( irpSp->FileObject ); Irp->IoStatus.Status = STATUS_SUCCESS; Irp->IoStatus.Information = FILE_DOES_NOT_EXIST;//错误? IoCompleteRequest(Irp, IO_NO_INCREMENT); return STATUS_SUCCESS; } 代码如上。return后报页错误。帮我点拨一下,可以? |
|
|
沙发#
发布于:2007-03-20 10:16
我怎么才能让一个文件打开失败,让用户打开不了我指定的文件呢?
|
|
|
板凳#
发布于:2007-03-20 14:10
#define FILE_SUPERSEDED 0x00000000
#define FILE_OPENED 0x00000001 #define FILE_CREATED 0x00000002 #define FILE_OVERWRITTEN 0x00000003 #define FILE_EXISTS 0x00000004 #define FILE_DOES_NOT_EXIST 0x00000005 都是常数。 |
|
|
地板#
发布于:2007-03-20 17:39
哈哈
|
|
|