shyandsy
驱动牛犊
驱动牛犊
  • 注册日期2007-12-21
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分447分
  • 威望183点
  • 贡献值0点
  • 好评度41点
  • 原创分0分
  • 专家分0分
阅读:1679回复:9

从DDK帮助中复制了一份SFILTER代码 可是create处理中加入任何代码都不能被执行

楼主#
更多 发布于:2008-10-11 10:19
原来没有这样的情况的
这次调程序 想在sfilter基础上做记事本监控

可是在SfCreate中加入的任何操作都不能被执行
经过调试发现 无论我怎么写都不被执行

下面是Sfilter中部分代码
下面这个if语句一直为真 我在系统里面新建删除复制打开 甚至安装OFFICE
所以这个模块一直就是IoSkipCuurentIrpStackLocation
下面的WINDBG语句永远不执行
 if (!FlagOn( SfDebug, SFDEBUG_DO_CREATE_COMPLETION |
                          SFDEBUG_GET_CREATE_NAMES|
                          SFDEBUG_DISPLAY_CREATE_NAMES )) {
    DbgPrint("\n进入  CREATE系统荣操作被放过   处理\n");
        //
        //  Don't put us on the stack then call the next driver
        //
        IoSkipCurrentIrpStackLocation( Irp );
        return IoCallDriver( ((PSFILTER_DEVICE_EXTENSION) DeviceObject->DeviceExtension)->AttachedToDeviceObject, Irp );
    } else {
    
        KEVENT waitEvent;
   DbgPrint("\n进入  CREATE正式  处理\n");
        //
        //  Initialize an event to wait for the completion routine to occur
        //


有没有哪位大侠知道这是为什么啊
选择喜欢做的事,就要努力去做!
shyandsy
驱动牛犊
驱动牛犊
  • 注册日期2007-12-21
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分447分
  • 威望183点
  • 贡献值0点
  • 好评度41点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2008-10-11 11:29
if (!FlagOn( SfDebug, SFDEBUG_DO_CREATE_COMPLETION |
                          SFDEBUG_GET_CREATE_NAMES|
                          SFDEBUG_DISPLAY_CREATE_NAMES ))
这条语句 在什么时候为永真
在线等大侠回复
选择喜欢做的事,就要努力去做!
shyandsy
驱动牛犊
驱动牛犊
  • 注册日期2007-12-21
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分447分
  • 威望183点
  • 贡献值0点
  • 好评度41点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2008-10-11 22:31
Re:从DDK帮助中复制了一份SFILTER代码 可是create处理中加入任何代码都不能
ULONG SfDebug = 0;

这条没错啊  
我直接复制的sfilter微软例子文件啊

原来调就不会这样
有一个月没搞了 现在怎么调都不行

从WinDbg显示的消息来看  这个FlagOn判断式永远为真

我就觉得很奇怪

所有IRP都不经过SfCreateComlete模块
选择喜欢做的事,就要努力去做!
shyandsy
驱动牛犊
驱动牛犊
  • 注册日期2007-12-21
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分447分
  • 威望183点
  • 贡献值0点
  • 好评度41点
  • 原创分0分
  • 专家分0分
地板#
发布于:2008-10-12 19:49
Re:从DDK帮助中复制了一份SFILTER代码 可是create处理中加入任何代码都不能
麻烦能不能说具体些  真的没明白是怎么回事
启动顺序指得什么
为什么收到的会全是我的设备对象

小弟真的很是抑郁。。。。。。。。谢谢你了
选择喜欢做的事,就要努力去做!
shyandsy
驱动牛犊
驱动牛犊
  • 注册日期2007-12-21
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分447分
  • 威望183点
  • 贡献值0点
  • 好评度41点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2008-10-16 18:03
Re:从DDK帮助中复制了一份SFILTER代码 可是create处理中加入任何代码都不能
真的很谢谢你  这样就OK了
可这是为什么呢
选择喜欢做的事,就要努力去做!
shyandsy
驱动牛犊
驱动牛犊
  • 注册日期2007-12-21
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分447分
  • 威望183点
  • 贡献值0点
  • 好评度41点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2008-10-16 20:47
Re:从DDK帮助中复制了一份SFILTER代码 可是create处理中加入任何代码都不能
好的 谢谢了
小弟实在是鄙陋的紧
选择喜欢做的事,就要努力去做!
游客

返回顶部