阅读:1374回复:4
IRP的清理工作!
各位好!
我在做USB读卡器的驱动,目前存在一个Bug。win2000下,在设备拔下后,在系统日志中会出现3个error log。 表明在驱动对象删除后,还有未处理的IRP。 对于这种情况,应该如何处理呢?如何找到哪个IRP未处理? 请多指教!! |
|
沙发#
发布于:2002-11-29 11:31
各位好! 做一下相应的标志? :D |
|
|
板凳#
发布于:2002-11-29 15:29
能否说的详细一点! 多谢!
|
|
地板#
发布于:2002-11-29 15:36
看一下Walter Oney书的同步化取消操作.
|
|
|
地下室#
发布于:2002-12-02 11:14
各位好!
我用driverwork写的驱动,在DeviceControl里是否应该完成IRP? 在DriverWork的帮助中讲到subclass需要完成IRP的处理来帮助base class维护Outstanding Requests 的计数。对于DeviceControl中,我想应该完成该IRP,所以添加以下代码: status = SmartcardDeviceControl(&scExtension,I); I.Information() = 0; //I.Information() = I.IoctlOutputBufferSize(); return I.PnpComplete(this, status); 但是驱动将使机器over。 有没有人碰到过这样的问题,应该怎样处理?我原来只是返回staus。 return SmartcardDeviceControl(&scExtension,I); 驱动是正常的。 |
|