luotuo55
驱动牛犊
驱动牛犊
  • 注册日期2007-02-06
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分17分
  • 威望62点
  • 贡献值1点
  • 好评度1点
  • 原创分0分
  • 专家分0分
阅读:2487回复:1

KeyboardClassServiceCallback 函数问题?

楼主#
更多 发布于:2009-08-24 17:45
我在看一个键盘虚拟驱动的源码,下面有点不懂。已经KeyboardClassServiceCallback SeviceCallback = 0; 为什么 在create派遣例程中还要if( (SeviceCallback == 0) || (0 == KeyboardClassDO) ) 这样一句呢?SeviceCallback 不是为0吗?


KeyboardClassServiceCallback SeviceCallback = 0;

NTSTATUS Create(IN PDEVICE_OBJECT fdo,IN PIRP Irp)
{
    if( (SeviceCallback == 0) || (0 == KeyboardClassDO) )
    {
        return CompleteIrp(Irp,STATUS_DEVICE_OFF_LINE,0);
    }    // Complete successfully

    return CompleteIrp(Irp,STATUS_SUCCESS,0);
}
siren9933
驱动牛犊
驱动牛犊
  • 注册日期2009-07-21
  • 最后登录2010-03-12
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望21点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2010-02-23 17:31
你好,我也在看那个。也非常疑惑。我自己试着定义了另外一个值结果到create里面就不是零了。。。。不知道这个里面有个怎么样的过程。你后来知道原因了吗?
游客

返回顶部