s_slt
驱动牛犊
驱动牛犊
  • 注册日期2007-01-27
  • 最后登录2007-08-07
  • 粉丝0
  • 关注0
  • 积分120分
  • 威望13点
  • 贡献值0点
  • 好评度12点
  • 原创分0分
  • 专家分0分
阅读:1148回复:1

应用层与底层过滤驱动的通信

楼主#
更多 发布于:2007-03-07 16:07
  我在HidUsb下加载了USB键盘过滤驱动,我用下面的方法创建了设备借口
    PDEVICE_OBJECT fido;

    status = IoCreateDevice(DriverObject, sizeof(DEVICE_EXTENSION), &deviceName,
                                FILE_DEVICE_UNKNOWN, 0, TRUE, &fido);
    if (!NT_SUCCESS(status))
    {        // can't create device object
        KdPrint((DRIVERNAME " - IoCreateDevice failed - %X\n", status));
        return status;
    }
    PDEVICE_EXTENSION pdx = (PDEVICE_EXTENSION) fido->DeviceExtension;    

    //创建符号连接名        
    status = IoCreateSymbolicLink(&linkName, &deviceName);
    if (!NT_SUCCESS(status))
    {
        IoDeleteDevice( fido );
        return status;  
    }


但是我用CreateFile打不开设备对象,用IrpTrace跟踪,发现CreateFile请求发送到HidUsb,我的驱动接受不到,请高手指点.
square690410
驱动牛犊
驱动牛犊
  • 注册日期2007-01-31
  • 最后登录2007-07-09
  • 粉丝0
  • 关注0
  • 积分190分
  • 威望20点
  • 贡献值0点
  • 好评度19点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2007-04-23 20:38
会不会是.....一些相关的dispatch function都pass给下一层了,忘了改回来所致
游客

返回顶部