hongbo
驱动牛犊
驱动牛犊
  • 注册日期2001-06-27
  • 最后登录2009-02-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:2319回复:12

请教怎样删除我的USB设备?

楼主#
更多 发布于:2001-09-25 09:53
我开发的是USB 设备,当我把设备从PC上拔去,就关不了计算机,请问在驱动中我应该怎样写OnRemoveDevice?我想这个问题对大伙肯定不难,帮帮忙吧!!!!!!
前进是我的唯一追求!
usb11
驱动小牛
驱动小牛
  • 注册日期2001-09-17
  • 最后登录2009-04-24
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2001-10-26 19:12
搜索一下,前面有这个问题的很多回复
助人乃快乐之本! 共同进步是我的本意!
xuye
驱动小牛
驱动小牛
  • 注册日期2001-03-23
  • 最后登录2008-05-05
  • 粉丝0
  • 关注0
  • 积分40分
  • 威望4点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2001-10-25 11:19
你应该喊她弥托佛~~~~!然后它就来了,你叫她牛它会很生气的。:)
hongbo
驱动牛犊
驱动牛犊
  • 注册日期2001-06-27
  • 最后登录2009-02-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2001-10-25 10:53
[QUOTE]原本由 Buddha 发表
[B]社么系统?什么现象呀?
 [/B][/QUOTE]

牛斑竹,牛版主!
前进是我的唯一追求!
hongbo
驱动牛犊
驱动牛犊
  • 注册日期2001-06-27
  • 最后登录2009-02-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2001-09-29 14:26
斑竹大人,怎么你就打了个招呼就走了,光让小的们在此聊啊!
前进是我的唯一追求!
LitteSW
驱动中牛
驱动中牛
  • 注册日期2001-06-10
  • 最后登录2010-08-16
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2001-09-28 12:19
DS和DDK各有优点。

穿梭于都市高楼之间,总是孜孜不倦地追寻着自由,蓦然回首,去发现已陷入深深的枷锁之中
DK-boy
驱动中牛
驱动中牛
  • 注册日期2001-07-22
  • 最后登录2005-09-21
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2001-09-28 10:29
[QUOTE]原本由 hongbo 发表
[B]多谢LitteSW和斑竹Buddha,我现在开发的设备是USB的读卡器,在win98下使用,当拔去读卡器后,系统就关闭不了计算机,出现正在关机画面后就停住了,我的WDM驱动当前状态下一直存在一个IRP,用于检测插拔卡片,是否系统检测到IRP未完成就移走了设备,因此才关不了机?我的猜测对吗?请指教!!! [/B][/QUOTE]
还是DDK好!
喜欢清静?享受人生
LitteSW
驱动中牛
驱动中牛
  • 注册日期2001-06-10
  • 最后登录2010-08-16
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2001-09-27 19:18
[QUOTE]原本由 hongbo 发表
[B]多谢LitteSW和斑竹Buddha,我现在开发的设备是USB的读卡器,在win98下使用,当拔去读卡器后,系统就关闭不了计算机,出现正在关机画面后就停住了,我的WDM驱动当前状态下一直存在一个IRP,用于检测插拔卡片,是否系统检测到IRP未完成就移走了设备,因此才关不了机?我的猜测对吗?请指教!!! [/B][/QUOTE]

具体的情况好象是当用CreateFile时,DS中的成员变量m_RequestCounter自动加1,调用DecrementOutstandingRequestCount()使m_RequestCounter减1。

在卸载设备时,m_RequestCounter好象要小于2。否则系统会等待。

具体的函数在kpnpdev.cpp文件中,你可以用softice跟踪一下你的程序。

穿梭于都市高楼之间,总是孜孜不倦地追寻着自由,蓦然回首,去发现已陷入深深的枷锁之中
hongbo
驱动牛犊
驱动牛犊
  • 注册日期2001-06-27
  • 最后登录2009-02-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2001-09-27 14:14
多谢LitteSW和斑竹Buddha,我现在开发的设备是USB的读卡器,在win98下使用,当拔去读卡器后,系统就关闭不了计算机,出现正在关机画面后就停住了,我的WDM驱动当前状态下一直存在一个IRP,用于检测插拔卡片,是否系统检测到IRP未完成就移走了设备,因此才关不了机?我的猜测对吗?请指教!!!
前进是我的唯一追求!
LitteSW
驱动中牛
驱动中牛
  • 注册日期2001-06-10
  • 最后登录2010-08-16
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2001-09-27 12:11
具体的情况我有点忘了,具体是跟踪到DS的类库中发现一个成员变量因为漏了DecrementOutstandingRequestCount()而错误,你具体跟踪一下。



穿梭于都市高楼之间,总是孜孜不倦地追寻着自由,蓦然回首,去发现已陷入深深的枷锁之中
Buddha
驱动老牛
驱动老牛
  • 注册日期2001-04-29
  • 最后登录2013-05-18
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望17点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2001-09-27 11:11
社么系统?什么现象呀?
<table style="filter: glow(color=sky blue, strength=10)"> <font color=white> 猫生病了, 老鼠大声朗诵诗集, 并修剪盆花. 猫生病了, 老鼠慢慢刷牙洗脸, 并打扫房间. 猫生病了, 老鼠倚在窗边欣赏夜色, 并对流星许愿. 猫生病了, 老鼠也病了, 它说:"我还是习惯那种时时紧张, 处处小心, 夜夜逃亡的生活." 午夜, 我听到老鼠在叹息, 且不再读诗了. </font></table>
hongbo
驱动牛犊
驱动牛犊
  • 注册日期2001-06-27
  • 最后登录2009-02-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2001-09-27 09:45
感谢你的指导,我在原来的基础上加上了此语句,可还是不行阿!能否给我讲解一下OnRemoveDevice都应该作些什么工作?
我的程序是用driverwork编写的,非常感谢!
前进是我的唯一追求!
LitteSW
驱动中牛
驱动中牛
  • 注册日期2001-06-10
  • 最后登录2010-08-16
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2001-09-26 00:06
你的这个问题我以前也遇到过,应该是漏了一条语句DecrementOutstandingRequestCount()。



穿梭于都市高楼之间,总是孜孜不倦地追寻着自由,蓦然回首,去发现已陷入深深的枷锁之中
游客

返回顶部