中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > 编程语言 > 综合其它
解决USB设备有时无法安全卸载的问题
作者:未知 时间:2005-07-27 23:24 出处:CSDN 责编:chinaitpower
              摘要:解决USB设备有时无法安全卸载的问题
相信你一定经常遇到这种情况:在电脑的USB接口插入闪存使用完毕后,按照常规的操作点击任务栏右下角“拔下或弹出硬件”,接着点击“停止USB Mass Storage Device-驱动器”后,没有出现“USB Mass Storage Device设备现在可安全地从系统卸载”对话框,而是出现了另一个对话框“现在无法停止通用卷设备,请稍候再停止设备”。经过检查,闪存里的程序文件都已关闭,电脑和闪存之间也没有任何数据传输。无法安全卸载设备是没有道理的啊!
   那么到底是因为什么导致硬件无法拔出呢?笔者仔细思考了这个问题。想来想去,猜测闪存插入时在Windows任务管理器中应该会增加一个与之相对应的进程,硬件正常拔出时这个对应的进程自动结束,当这个进程不能正常结束时硬件也就无法正常拔出了。为了验证这个猜想,笔者先打开任务管理器,进入“进程”一栏,注意到左下角显示的是:“进程数:23”,再插入闪存,然后把目光集中到“进程数”上,可是,当系统找到硬件,一切显示正常之后,进程数并没有像笔者想像的那样变为24,而是保持23不变。这样看来,闪存插入时并没有与之相对应的进程数,那么这个现象就不好解释了。
 
   正当我无奈地点击托盘图标,想卸载闪存时,突然发现当点击"停止USB驱动器"后进程数变成了24,也就是说卸载硬件要由一个进程“负责”,当硬件卸载后,这个进程也同时结束。经过多次试验,发现这个进程的名称是rundll32.exe,哈哈,原来是这个熟悉的链接程序。
 
   到底有没有某一个进程和无法卸载硬件有关呢?笔者恰好又碰到了一次"无法停止设备"的机会,就打开任务管理器的进程栏,依次试验,每结束一个看起来相关的进程,就试验看能否拔出硬件。结束了几个无用的进程后,发现有3个相同的rundll32.exe进程同时存在,把这几个进程都结束时,笔者发现,硬件可以正常删除了。真是功夫不负有心人,看来症结还在rundll32.exe上。通过这次研究,笔者总结出:可移动硬件无法正常卸载时,进程栏中必定还有没有结束的rundll32.exe(当然,有的rundll32.exe可能和系统中正在运行的程序有关),把这几个rundll32.exe进程结束,可移动设备就肯定能正常卸载了。
 
   小提示
 
   如果经常出现这种无法停止设备的现象,可以建立一个批处理文件,里面输入“taskkill /im rundll32.exe”,保存为delusb.bat,出现故障时运行一下就可以了。这种方法适用于Windows XP用户,如果是Windows 9x/2000的用户,可以到这里下载。
关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有