Btune
驱动牛犊
驱动牛犊
  • 注册日期2002-02-20
  • 最后登录2008-09-24
  • 粉丝0
  • 关注0
  • 积分52分
  • 威望13点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
阅读:1375回复:4

IRP的清理工作!

楼主#
更多 发布于:2002-11-29 11:13
各位好!

我在做USB读卡器的驱动,目前存在一个Bug。win2000下,在设备拔下后,在系统日志中会出现3个error log。 表明在驱动对象删除后,还有未处理的IRP。

对于这种情况,应该如何处理呢?如何找到哪个IRP未处理?

请多指教!!
Btune
驱动牛犊
驱动牛犊
  • 注册日期2002-02-20
  • 最后登录2008-09-24
  • 粉丝0
  • 关注0
  • 积分52分
  • 威望13点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
沙发#
发布于: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);

驱动是正常的。
ydyuse
驱动老牛
驱动老牛
  • 注册日期2002-07-25
  • 最后登录2005-03-26
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-11-29 15:36
看一下Walter Oney书的同步化取消操作.
生命驱动,活力无限!
Btune
驱动牛犊
驱动牛犊
  • 注册日期2002-02-20
  • 最后登录2008-09-24
  • 粉丝0
  • 关注0
  • 积分52分
  • 威望13点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-11-29 15:29
能否说的详细一点! 多谢!
magicx
驱动老牛
驱动老牛
  • 注册日期2002-02-22
  • 最后登录2014-08-18
  • 粉丝1
  • 关注0
  • 积分-14分
  • 威望13点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2002-11-29 11:31
各位好!

我在做USB读卡器的驱动,目前存在一个Bug。win2000下,在设备拔下后,在系统日志中会出现3个error log。 表明在驱动对象删除后,还有未处理的IRP。

对于这种情况,应该如何处理呢?如何找到哪个IRP未处理?

请多指教!!
 


做一下相应的标志? :D
[color=red]大头鬼! :P[/color]
游客

返回顶部