发布于2026-08-13 阅读(0)
扫一扫,手机访问
今天聊个很有意思的冷知识。
Windows 95时代,微软是怎么判断一个程序是安装程序的呢?答案简单到有点离谱——靠猜,而且只看文件名。
具体来说,系统会扫描可执行文件的名字,看它是否包含以下六个关键词中的任意一个:setup、install、inst,以及三个非英语词汇imposta、ayarla、felrak——分别对应意大利语、土耳其语和匈牙利语里“安装”相关的词。
有意思的是,在这个列表里,install其实是冗余的。因为任何包含install的文件名,自然也会包含inst。后来有推测说,inst是后来才加上的,目的是为了匹配像blahinst这种命名方式的安装程序,但当时没人顺手把多余的install删掉。

如果文件名一个都没对上,Windows 95还有后手:它会退而求其次,检查可执行文件的完整路径里是否包含“Setup”这个词。
这套字符串匹配机制的背后,其实是一个系统文件恢复流程在撑着。当时的问题在于,很多安装程序根本不管版本号,上来就覆盖系统文件,完全无视微软那条“只能用更新版本替换旧版本”的铁律。
举个例子:一个捆绑了Windows 3.1版本共享DLL的安装程序,完全可能把Windows 95的新版文件直接覆盖掉。结果就是,依赖这些文件的程序一夜之间全部崩溃。
Windows 95的应对方案是,在隐藏目录C:\Windows\SYSBCKUP里备份那些经常被覆盖的系统文件。等安装程序跑完,系统再回头检查一遍,把被降级的文件恢复回正确的版本。但这套安全网能正常工作,前提是——系统得猜对“安装程序是否运行过”。
到了Windows 2000,微软放弃了这种靠猜的机制,引入了Windows文件保护(WFP)。它通过Winlogon注册文件变更通知,从%WinDir%\System32\dllcache缓存中恢复受保护文件。不再依赖文件名猜测,也不必等到安装程序结束才行动。
Windows ME也推出了类似的系统文件保护。Vista之后,这个体系又升级为Windows资源保护(WRP),改用访问控制列表(ACL)来保护文件。
如今,Windows 11用户还在运行的sfc /scannow命令,正是这一体系的直系后代。它取代了1995年那个靠扫描文件名里有没有“setup”来决定是否行动的原始机制。

售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
4
5
6
7
8
9