在2005年左右,曾经遇到这样一个问题,系统安装好,万象安装好,母盘上没有问题,启动速度什么的都很正常,结果ghost了一台机器出来之后,开机启动傻眼了,发现经典界面启动xp时,有个正在加载个人设置,那个阶段至少要卡上一分钟左右,实在是慢的离谱,于是剑拔弩张的开始查问题,最后经过各种对比,发现是由于系统服务“Shell Hardware Detection”的启动方式被修改了,而具体是什么改的,无从得知,因为母盘上怎么恢复,怎么测试都没问题。
那么遇到这个问题很简单,比如你在a机器上发现有这种现象,把这台机器上的“Shell Hardware Detection”服务启动方式改为和当前相反的状态即可。例如:
当前Shell Hardware Detection服务的启动方式为自动:那么你就改成已禁用,批处理命令为:sc config ShellHWDetection start= disabled
当前Shell Hardware Detection服务的启动方式为已禁用:那么你就改成自动,批处理命令为:sc config ShellHWDetection start= auto
注意:
如果禁用该服务,极少情况下,在某些系统或者某些硬件情况下会出现虚拟盘出盘或接入USB存储设备后,出现在设备管理器能看到盘符,但是我的电脑中看不见,结束Explorer.exe后恢复正常的问题。如果出现这种问题,基本是由于主板驱动或者是系统经过多次封装导致,建议重做系统或者更换系统,并将IDE控制器改为标准的方式尝试解决。
同时也有用户反馈禁用该服务会导致视频无法使用,因此在禁用该服务的时候,请确认摄像头、USB存储设备、虚拟盘出盘都正常之后,再禁用或启用该服务。
该方法适用于Windows XP SP1、SP2、SP3操作系统,未测试Windows 7是否有效,因此该解决方案与用什么维护软件无关,属于是系统自身问题。
该服务的作用是什么?
系统服务中的描述为:“为自动播放硬件事件提供通知。”而具体到我们看到的现象包含以下几种情况:
1、U盘或者光驱的自动播放功能,比如我们将CD盘插入光驱后,经常会看到光驱盘符的图标变了,这个就是自动播放起到的功能。
2、“自动执行”虽然该功能带来了便利,但是也带来了风险,目前绝大多数病毒都会使用该功能来传播病毒,所以微软已经默认禁用自动播放中的自动运行功能,来缓解这一安全隐患。微软windows 7默认已经禁用了自动播放功能中的“自动运行”功能,详细链接:http://www.qudong.com/internet/MSN/20090430/33135.html
那么为什么该服务会在某些情况下影响视频甚至虚拟盘出盘?
根据该服务的功能的功能,我们可以想像到,他的作用自动播放功能中包含自动发现盘符功能,而“盘符”会与usb存储器,比如相机,U盘有关系,当然虚拟盘出盘也是多出一个分区,它要实现自动播放,自然需要知道盘符是什么,当该服务受到系统其他参数的影响时,自然就导致了usb设备异常或者盘符看不见的情况了。
导致这种现象的原因还有哪些?
在有盘上,到目前位置只发现这一个服务会影响正在登陆windows,正在加载个人设置时速度慢,而在无盘上,还会因为屏蔽了过多的端口导致这个过程速度慢,也就是ipsec安全策略服务,所以如果当你在无盘上遇到这个问题时,可以进行如下操作:
1、禁用IPSEC Services服务,测试是否正常,如果正常了,可以尝试不要屏蔽那么端口,只屏蔽135、139、445端口即可,其他多余端口不要屏蔽,往往可以解决问题,如果实在无法解决,只能禁用IPSEC Services服务,不去封端口,当然也可以尝试更换网卡pnp驱动,或者修改网卡参数来尝试,是否能解决问题。
2、禁用windows自带的防火墙功能,在无盘上开启这个服务,将有机率导致出现这样的问题。
以上为一些经验之谈,可能有些孤陋寡闻、描述有误的情况发生,如果您发现有错误,欢迎随时指正!