Windows 的 bugs
Windows 中有很多程序的 bug(就是错误,或专业上称为缺陷)在经历了数版之后仍然不见去除。比如,记事本是一个 Windows 中很常见的程序,但其中的一个 bug 就是经历了数代之后,仍然没有被消除。这个 bug 出现在“自动换行”开启的时候。从 Windows 3.1 起,这个 bug 就一直存在着,直到 Windows 8.1 为止(在 Windows 10 1511 [版本号 10.0.10586] 上这个 bug 已经不存在了)。这个 bug 的一种重现方法是:将记事本设置成“自动换行”,然后,连续地输入“123456789 ”,注意有一个空格跟随在数字的后边。当恰好超过一行的宽度时,把第一行最后的空格删除。保存为一个文件,如“test.txt”。在最后的那一组“123456789”之前插入一个空格,再保存,bug 就显现出来了,试试看移动光标,就会发现有不对劲的地方。如果此时强迫窗口刷新一下,窗口中的文本会发生变化,此时,就完全正常了。也就是说,这个 bug 是因为记事本在保存文件时把文字的布局换过了,但没有刷新窗口。这是一个程序的 bug。
类似的 bug 还有:Internet Explorer 有时会“忘记”默认主页,而连接到微软的 Internet 起始页。后来发现好像是每次安装过 IE 相关的组件之后它就会这样,可能是故意的。还有 Windows 本身的 bug:工具提示没有自动消失,反而浮在窗口的上方不消失;一个明明已被关闭的文件却删除不掉,必须重新启动以后才能删除;某个进程被挂起后,系统无法休眠;Alt-Tab 的窗口标题留在当前窗口上没有擦掉。如此等等,有些就是 bug,有些是架构上设计成这样的,但充分表明一点:Windows 离十全十美还有距离。我还记得“茗”字的错误显示。在 Windows 98 上,宋体 12 磅时,就会错误地显示(草字头下一个“各”)。这个错误在 Windows Me 上消除了。不过,Windows Me 另有一个宋体字体的 bug:繁体字“廠(厂)”如果用 12 磅宋体显示,就会出问题,变成“广”字头下一个“敝”。据说 Windows 的 Windows Media Player 7.0 有一个安全漏洞:Skin 的安装可能会引起浏览器自动执行其中的 Java 程序,如果圈套设得好些,甚至能控制计算机上的文件。微软称将 Internet 选项中的 Internet 安全级设到“高”可以避免此类攻击。
2003 年,又有某人发现了 Internet Explorer 的一个 bug。这个 bug 存在于 Internet Explorer 5 SP2/SP3、Internet Explorer 5.5 SP2、Internet Explorer 6 SP1。新建一个 html 文件,包括以下内容:
<html>
<form>
<input type aaaa>
</form>
</html>
打开该文件,IE 就会出错。这是因为 IE 错误地把一个空指针传给一个字符串比较程序。这个问题在 2003 年 9 月的 IE 累积补丁包中终于被解决掉了。
其实中文版微软软件中的一些翻译或多或少都有问题。比如说 IE 5 和 6 里面有一个高级选项,叫做“重新使用启动快捷方式的窗口”,在英文版 IE 里是这样的:Reuse windows for launching shortcuts。这句话的翻译应该是很简单的:重复使用(已有)窗口来启动快捷方式,进一步说就是在已有的窗口中启动快捷方式。如果打开这个选项(默认是打开的),那么在打开一个 URL 快捷方式时,如果有已有的 IE 窗口,那么就会在这个窗口中打开。如果关闭这个选项,那么在打开一个 URL 快捷方式时,就会打开一个新窗口。这个是最基本的表现。更多有关翻译的问题,请参考:
烂翻译。