阅读:2003回复:0
我用CreateFile打开Sfilter的设备总是打开失败是为什么呢?
我在创建完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中也做过修改,可是为什么我就是打开设备失败呢 ? |
|