Joseph Fieber是itsvista的创始人,其在IT界已有20多年的经验,近日在itsvista网站上,他向我们描述了这样一件事:
我的一位读者向我描述了Vista中一个尚未存档的bug。这位读者使用的是意大利语的Windows Vista,据他说,当他在命令行下拷贝文件时,系统给出的选项是“Yes|No|All”,但执行时,对应的选项却和实际执行的动作完全不符。当你选择“No”的时候,系统执行的确实继续拷贝的动作!我查看了一下微软知识库,发现了一篇和这位读者描述的情况一致的文章,但这篇文章却不是针对Vista系统的,而是Windows Server 2003。
为什么一个Windows 2003的bug会出现在Vista系统中,Paul Thurrott(windowsitpro.com编辑,IT业资深人士)解释说:
新版本的Windows系统通常是在现有最新的Windows系统基础上进行构建的,微软当年重建Longhorn开发团队开发目前我们所见到的Windows Vista系统时,最初的原型是Windows Server 2003 SP1的。但当2001年开发工作正式开始后,却又变成了基于Windows XP。而到了2004年中期,开发小组发现,以Windows XP的代码为基础构建Roadmap中所描述的Windows Vista系统已经艰难到无法进行,使开发陷入僵局。因此当微软再次开始Windows Vista的开发时,不得不又回到了最初的设想即基于Windows 2003 SP1而不是Windows XP。
让我们回到我的读者所提到的问题,从下面的这张图中可以看出,他使用的是Vista系统,而且图中清楚的表明其选择的是“n-NO(也就是不拷贝文件)”,而Vista执行的却是拷贝操作(3 file copiati):
基于微软知识库的描述,我们得知这是由于Windows Server 2003中的Ws03res.dll资源文件未正确的实现意大利文的本地化而导致的。
此时,一个更重要的问题出现在我的脑海中,微软知道这是Windows Server 2003的问题,但他们也知道Vista(还有尚未发布的Windows Server 2008)是在Windows Server 2003的基础上开发的,但现在并没有任何关于此问题在Vista下的解决方案,而且也没有其它Vista相关的文章向读者描述这一问题,虽然微软员工已经针对此问题花费了时间并提供了相应的补丁(但只是针对Windows Server 2003 SP1的)。微软是不是把Vista和其它系统分得太清楚了?当一组开发人员使用了另外一组的代码时,他们难道没有就此问题进行过探讨?这难道就是共享代码所带来的好处之一?虽然这只是一个很小的问题,却会引发大众的好奇心,还有多少类似的问题存在于Windows Server 2003,哪些已经被发现了,却没有针对Vista的解决方案?因此建议大家在使用Vista系统中如果发现问题却在Vista知识库中找不到答案时,可以去Windows Server 2003的知识库中找找。