系统设备号冲突引起故障
现象:一台兼容机,配置为:Pentium 166 MMx CPU。联讯8J61主板、16M内存、SONY CDU311 八倍速光驱。使用简体中文windows 95操作系统。此机为多人共用,为方便用户,启用了windows 95自带的口令功能,使各个用户可以通过输入自己的用户名及密码来进入各自不同的桌面。一日,某用户以“CD”为用户名进行登陆,使登录失败。系统给出“非法的长文件名或路径”的错误信息,并导致通用用户(即未建立用户名的用户)同样无法登录。但其他用户仍要以正常登录。
分析:用户仍可以正常使用,说明硬件系统无故障也无病毒侵袭软件,而以用户名“CD”进行登陆后造成系统启动失败,说明此用户有可能与某系统设备号同名而系统以及发展到了Windows 98,但是其核心仍脱离不了DOS,而系统仍保留数个设备号,同时对外界设备的设备号也予以保留,DOS使用手册规定:不能以系统保留号作为名称来建立文件名或目录,如LPT、COM、CON、PRN等。因此在使用中就必须注意不要与这些系统设备号冲突,而我们在给设备安装驱动程序的过程中,通常要给该设备取一个名字,这个名字就作为系统设备号,与诸如LPT、COM等具有同等功能。
处理:检查Config.sys和Autoexec.BAT文件,果然发现在加载光驱驱动程序的命令行为:
Device=c:\cd-roM\SoNYIDE.sys/D:CD
(在Config.sys中)
c:\DOS\MSCDEX.EXE/D:CD
(在Autoexec.BAT中)
由此可知故障所在,光驱以“CD”为设备名,所以一旦用“CD”命名文件或目录就出错,将其设备号改为MSCD000。重新启动,故障消失。
(出处:http://www.sheup.com)