Win 98自动运行程序的神秘后门 一般人都知道，要想在Win 98系统启动时自动运行程序，不外乎有以下几种途径：自动批处理、Win.ini、注册表、“启动”组等，却很少有人知道Win 98自动运行程序还有另一扇“后门”，这就是Winstart.bat。 Winstart.bat是一个特殊性丝毫不亚于Autoexec.bat的批处理文件，说它特殊，原因有六： 1.是名称特殊，如果改为其它名称，则如同自动批处理被改名一样不能起到自动执行的效果; 2.是位置特殊，它必须位于Windows的安装目录，如C:\win、D:\Windows等；
3.是作用特殊，它多数情况下为应用程序及Win 98自动生成，因为安装某些新的应用软件后（如某些声卡的驱动程序等），由于程序共享冲突的原因一些系统设置不能被立即更改，再次启动系统时就可通过在Windows目录下生成一个该名称的批处理，以可靠地自动完成余下的任务；
4.是执行顺序特殊，它是在执行了Win.com，并加载了多数驱动程序之后开始执行（这一点可通过启动时按F8键再选择逐步跟踪启动过程的启动方式可得知）;
5.是存在形式特殊，一般情况下很难看到它的神秘身影，即使难得有应用程序在安装时创建了它，一旦完成任务之后系统又很快将其删除；但如果你自己创建了一个，则系统又不会自动删除它；
6.是禁止其执行的方式特殊，用一步一步跟踪启动过程以回答“Y”或“N”的方法对其它驱动程序的加载与否都很奏效，但Winstart.bat却对你的分步执行毫不理会，而一旦你用安全模式启动Win 98时它却又能够老老实实毫不多事。
我们都知道，Win 98可以完全不需要Config.sys和Autoexec.bat也能很好运行，实际上，Win 98的DOS引导文件Io.sys和Msdos.sys已包含了Config.sys的功能（如自动加载Himem.sys等），而Autoexec.bat的功能却可以由Winstart.bat帮助完成，因此我们完全可以将Winstart.bat看成是Win 98的“自动批处理”。不信的话，你不妨在Windows安装目录下建立一个Winstart.bat批处理，再在其中用ECHO命令显示几行字符串，或者加上一条Pause暂停命令等，再启动Win 98，看看结果如何？
知道了这扇“后门”，不能仅仅好玩了事，总要想办法让它能为我们所用。我们可将自动批处理中的一些语句搬到Winstart.bat中，再将自动批处理删除，以达到既可执行有关命令又能保持根目录简洁的效果;还可以避免某些安装程序或其他人对你的批处理随意更改，你只需在Winstart.bat中加上以下这么一句：
If exist c:\autoexec.bat del c:\autoexec.bat
或者将自动批处理用事先的备份进行更替，这样下次启动时一切又可恢复修改前的原样了(此处备份名称设为C:\win\auto.bak）：
Copy c:\win\auto.bak c:\autoexec.bat /y
笔者就曾用该批处理“整”过一位自诩“高手”的朋友:在Windows目录下建立一个Winstart.bat，用@echo off关闭屏幕回显，再定义一个标号，用goto语句构成一个死循环，结果不说你也知道;Win 98启动到中途就不幸永远只有一个缓慢闪烁的光标，杀毒、扫描磁盘、修理与还原备份注册表乃至用Sfc.exe恢复Win 98文件等都不奏效，一番狼狈之后捅破窗户纸，原来却不过是用老掉牙的DOS开的一个小小玩笑！

（许 纪）