实际上,它并没有忘记,它只是想和你再次确认一下。
这是 Windows XP2 负责开发 CD 自动播放组件的工程师和我说的。
在 Windows XP 中,处理 CD 自动播放时会有两个问题。
第一,当你安装了一个新的可以处理 CD 自动播放的应用程序时,很多用户不知道在哪里可以设置使用新的应用来作为 CD 自动播放的默认程序。
如果用户之前选择一个程序并勾选了“始终执行此操作”,则他很难知道在哪里可以撤消 “always” 标志以使对话框重新出现并允许选择新程序。
第二,很多应用程序,在安装完成之后,会偷偷地修改 CD 自动播放设置,使它自己作为默认播放程序,”兴高采烈”地覆盖用户先前的设定。因为这些程序自负地认为自己是人类历史上最酷最神奇的程序。
换句话说,这两个问题是,”我刚刚安装了这个程序,我希望它是CD自动播放程序”,它的反面是,”我刚刚安装了这个程序,我不希望它是CD自动播放程序”。
Windows XP SP2 引入了一项和 CD 自动播放相关的新特性,来解决上面这两个问题。
当它看到新的 CD 自动播放处理程序可用时,它会再次向你显示 CD 自动播放选择对话框。
这使用户有机会(a)选择刚刚安装的新程序,或(b)取消选择刚刚安装的程序(如果它冒昧地将自己设置为默认值)。
升级到 Windows XP SP2 后,首次将 CD 插入计算机时,还将看到 CD 自动播放对话框。这是一个”迟到总比没有好”的对话框,用于覆盖在升级到 Windows XP SP2 之前安装的任何处理程序设定。
这个故事的寓意是什么?在过去,您只需要帮助其他程序员与你的组件接口进行交互,而在新的软件环境中,你还必须担心阻止试图滥用你的接口的程序员。
用户信任你,才会允许你的代码在他的硬件上运行。
所以,我们需要怀着敬畏,谦卑的心态来分发代码。
永远不要认为你的程序是这颗星球上最酷的代码,永远。
始终忠于你的用户,他/她才是机器的主人。
Raymond Chen的《The Old New Thing》是我非常喜欢的博客之一,里面有很多关于Windows的小知识,对于广大Windows平台开发者来说,确实十分有帮助。
本文来自:《Why does Windows XP SP2 sometimes forget my CD autoplay settings?》