youngwinter
驱动牛犊
驱动牛犊
  • 注册日期2004-08-23
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分363分
  • 威望39点
  • 贡献值0点
  • 好评度38点
  • 原创分0分
  • 专家分0分
阅读:1930回复:9

请教:Attach到U盘后如何安全卸载U盘?

楼主#
更多 发布于:2007-03-22 09:59
  写了一个文件过滤驱动,当U盘插入后可以检测到并成功Attach上一个过滤设备,工作也正常,问题是在安全删除USB设备的时候报“无法停止”,卸载掉驱动就好了。想来应该是那个attach上的设备的影响。请教诸位大牛,如何能安全地卸载U盘啊?或者说在桌面点击安全删除的时候,系统会发送哪些消息呢?哪些能被我们收到并能够因此顺利detach?
rayyang2000
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2012-09-13
  • 粉丝3
  • 关注0
  • 积分1036分
  • 威望925点
  • 贡献值3点
  • 好评度823点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2007-03-22 12:55
貌似你的过滤驱动有问题,检查stop/remove部分
天天coding-debugging中----超稀饭memory dump file ======================================================== [b]Windows Device Driver Development and Consulting Service[/b] [color=blue][url]http://www.ybwork.com[/url][/color] ========================================================
youngwinter
驱动牛犊
驱动牛犊
  • 注册日期2004-08-23
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分363分
  • 威望39点
  • 贡献值0点
  • 好评度38点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2007-03-22 14:36
引用第1楼rayyang20002007-03-22 12:55发表的“”:
貌似你的过滤驱动有问题,检查stop/remove部分


请教一下,我逐句跟踪后发现,调用了IoAttachDeviceToDeviceStack()或IoAttachDeviceToDeviceStackSafe()后会有这个现象。但不调又不行。我想在安全卸载硬件的时候把设备从栈里Detach掉,应该没有问题。但安全卸载硬件的时候过滤驱动好像没有收到任何IRP。请问驱动如何获知一个U盘被卸载呢?我的驱动是参考tooflat的sfilter写的,好像它也没有相关的stop/remove的部分。
谢谢指点!
stevphen1
驱动牛犊
驱动牛犊
  • 注册日期2007-09-29
  • 最后登录2007-11-02
  • 粉丝0
  • 关注0
  • 积分230分
  • 威望24点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分0分
地板#
发布于:2007-10-10 16:42
要在fastio里处理一下FastIoDetachDevice

if(SourceDevice == YourHookDevice)
{
            IoDetachDevice(TargetDevice);
            IoDeleteDevice(SourceDevice);
            
            YourHookDevice = NULL;
            return;
}
lovehhy
驱动小牛
驱动小牛
  • 注册日期2007-09-17
  • 最后登录2010-09-17
  • 粉丝0
  • 关注0
  • 积分1028分
  • 威望244点
  • 贡献值0点
  • 好评度146点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2007-10-10 17:42
注册IoRegisterFsRegistrationChange
fooegg
驱动小牛
驱动小牛
  • 注册日期2007-08-25
  • 最后登录2008-08-31
  • 粉丝0
  • 关注0
  • 积分1000分
  • 威望111点
  • 贡献值0点
  • 好评度110点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2007-10-11 01:23
stevphen人其实不错,就是太爱激动了
毛主席夸我水灌得好
lovehhy
驱动小牛
驱动小牛
  • 注册日期2007-09-17
  • 最后登录2010-09-17
  • 粉丝0
  • 关注0
  • 积分1028分
  • 威望244点
  • 贡献值0点
  • 好评度146点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2007-10-11 11:13
引用第5楼fooegg于2007-10-11 01:23发表的  :
stevphen人其实不错,就是太爱激动了


同意,就是情商和性格的问题,是个好同志
ProPlayboy
驱动大牛
驱动大牛
  • 注册日期2005-07-07
  • 最后登录2022-02-15
  • 粉丝0
  • 关注0
  • 积分1016分
  • 威望811点
  • 贡献值0点
  • 好评度719点
  • 原创分0分
  • 专家分0分
  • 社区居民
7楼#
发布于:2007-10-11 11:16
引用第6楼lovehhy于2007-10-11 11:13发表的  :


同意,就是情商和性格的问题,是个好同志

。。。无语,昨天我还见你和他在驱网吵架。。。
另外,你说他是好同志,我对这个说法没意见。。哈,一般用来形容断背的。。
人不靓仔心灵美,版头不正红花仔!
lovehhy
驱动小牛
驱动小牛
  • 注册日期2007-09-17
  • 最后登录2010-09-17
  • 粉丝0
  • 关注0
  • 积分1028分
  • 威望244点
  • 贡献值0点
  • 好评度146点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2007-10-11 11:26
引用第7楼ProPlayboy于2007-10-11 11:16发表的  :

。。。无语,昨天我还见你和他在驱网吵架。。。
另外,你说他是好同志,我对这个说法没意见。。哈,一般用来形容断背的。。


在我们那里,打一架然后再互相拍拍灰起来喝酒的都有。
fooegg
驱动小牛
驱动小牛
  • 注册日期2007-08-25
  • 最后登录2008-08-31
  • 粉丝0
  • 关注0
  • 积分1000分
  • 威望111点
  • 贡献值0点
  • 好评度110点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2007-10-11 14:32
我这儿经常有喝完酒打架,完了还是好朋友,然后再喝再打,呵呵
毛主席夸我水灌得好
游客

返回顶部