myfll
驱动牛犊
驱动牛犊
  • 注册日期2009-06-19
  • 最后登录2011-04-07
  • 粉丝0
  • 关注1
  • 积分30分
  • 威望291点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1920回复:0

我用CreateFile打开Sfilter的设备总是打开失败是为什么呢?

楼主#
更多 发布于:2009-07-23 16:10
我在创建完CDO后创建符号连接并且已经成功    
 RtlInitUnicodeString( &linkString, L"\\DeviceDos\\SFilter");
    Status = IoCreateSymbolicLink( &linkString, &NameString );
    KdPrint(( "SFilter!IoCreateSymbolicLink\n"));

    if (!NT_SUCCESS(Status)) {
    IoDeleteSymbolicLink( &linkString );
    //status = IoCreateSymbolicLink( &linkString, &NameString );

    //if (!NT_SUCCESS(Status)) {
    KdPrint(( "SFilter!DriverEntry: IoCreateSymbolicLink failed\n"));

       // IoDeleteDevice(gSFilterControlDeviceObject);
        return Status;
在SfCreate中作如下修改:
 if (IS_MY_CONTROL_DEVICE_OBJECT(DeviceObject))
    {
                         Irp->IoStatus.Status =STATUS_SUCCESS; //STATUS_INVALID_DEVICE_REQUEST;
        Irp->IoStatus.Information = 0;
        //gControlDeviceState = OPENED;
        IoCompleteRequest(Irp, IO_NO_INCREMENT);

        return STATUS_SUCCESS;
    }

在SfClose中也做过修改,可是为什么我就是打开设备失败呢 ?
游客

返回顶部