windows 95的安装程序到底是个什么鬼?

最近我听Raymond Chen讲了个老事儿,说的是Windows 95里头藏着个挺隐秘的小把戏,这次终于给抖搂出来了。这个秘密机制是微软资深工程师Raymond Chen在3月25日说的。原来Windows 95有个挺狠的招数,就是为了不让那些安装程序拿旧的文件把关键的系统组件给覆盖了。一旦安装完,系统就会悄摸摸地把那些被换掉的文件再换回来。 那个年代装软件可真没规矩,不少程序都自带Windows系统组件的副本,结果根本不管系统里有没有这东西、也不管版本新旧,直接就给覆盖掉了。这一来二去,系统里的关键组件经常被降级,连累别的软件也跟着崩溃,整个系统乱成一团。 微软那时候也挺头疼,就在C盘的WindowsSYSBCKUP文件夹里存了不少容易被改坏的组件备份。只要有软件开始操作,系统就会拿备份的版本去跟实际的版本比比看。要是发现装进去的是旧版,就偷偷把备份的新版本给替换上去;要是真装了个新版,那就顺便更新一下SYSBCKUP里的记录。 结果搞来搞去就是这么个情况:安装程序以为自己顺利把文件换掉了,其实系统早就背后悄悄地纠正了它的错误。 Raymond Chen还说过微软以前也试过别的招数。第一种是直接拦着不让程序改文件,结果程序一报错就停了,普通用户根本看不懂也不会修;第二种是写个假文件去骗它,但好多程序都有文件校验机制,一看不对立马就报错了。 这么看下来,这个SYSBCKUP的办法才是最聪明的——既让那些不懂事的安装程序觉得自己成功了,又把系统文件的版本给保住了。虽说这法子看着挺原始的吧,不过在那时候安装程序还没怎么规范的时候,它确实帮了大忙,保住了Windows 95系统的稳定。