PF_FORWARD_ACTION cbFilterFunction(IN unsigned char *PacketHeader,IN unsigned char *Packet, IN unsigned int PacketLength, IN unsigned int RecvInterfaceIndex, IN unsigned int SendInterfaceIndex, IN unsigned long RecvLinkNextHop, IN unsigned long SendLinkNextHop)是过滤数据包的函数,可是在里面使用ZwCreateFile就会出现异常,这是为什么啊???我把ZwCreateFile相关的代码全部复制到调用cbFilterFunction的函数里面,结果很正常地对文件进行了读写,这是为什么啊????怎样才能在cbFilterFunction里面读写啊????

解决方案 »

  1.   

    两个都是cbFilterFunction?
    那你就在那个可以CreateFile的里面把它给Create了,保存它的句柄。
      

  2.   

    不好意思,我打错了.NTSTATUS DrvDispatch(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp)
    修改为:
    我把ZwCreateFile相关的代码全部复制到调用DrvDispatch的函数里面,结果很正常地对文件进行了读写,这是为什么啊????怎样才能在cbFilterFunction里面读写啊????