过滤驱动问题,各位达人来,紧急求救。恩德只能以分回报
我写了个过滤驱动,Write例程绑在IRP_MJ_Write上。过滤驱动加载在D盘。
我从C盘拷贝一个文件至D盘。softice跟踪到了2次Write例程的调用。
第一次调用顺利完成。
第二次调用时在MmProbeAndLockPages处发生了问题,尽管加上了try{}except,但是它每当运行MmProbeAndLockPages时就重启,无法捕获问题。
此部分代码如下:
pCurrentMDL = iIRP->MdlAddress;
try {
MmProbeAndLockPages( pCurrentMDL, iIrp->RequestorMode,
( irpStack->MajorFunction == IRP_MJ_READ) ?
IoReadAccess : IoWriteAccess);
}except..
if ( iIrp->RequestorMode == UserMode)
pCurrentMDL = MmGetSystemAddressForMdlSafe( pCurrentMDL,
NormalPagePriority);
......
此处是否有何非常严重的问题?希望达人回答,大恩大德无以回报,只能以分相送,短时间内可能会累加至300分。