随着Vista推出日子的接近,大家可能都感到很兴奋,想尽快体验一下其中的崭新特性。但是,有个大问题就是“多少应用程序能在Windows Vista上运行?”在windowsconnected.com上就有人公布了他在Vista上运行一些应用程序的兼容性报告,这对想升级到Vista的用户提供了参考。
报告的作者声明,由于微软是非常重视软件兼容性的,所以这份报告中讨论的问题可以在Vista正式推出的时候就已经解决了;测试的Vista版本是5270及以下版本。
Windows资源保护
Windows资源保护(WRP)是Vista中新的系统文件和注册保护机制。和windows xp不同,XP允许写入System32并跟着用dll缓冲区中某个文件覆盖原来的文件。Vista则采取更严格的限制,现在不允许覆盖文件。通过这个新特性也能够保护某些特定的注册表值。
然而,这个可能就是最大的应用程序兼容性问题。最普遍的是当某个应用程序尝试注册帮助扩展程序时,这个应用程序可能会弹出一个错误对话框并显示一串很长的错误代码后退出运行。这个bug可能会在Beta2或正式版中解决,但目前在很多应用程序中都会出现,甚至Office也不能避免。
另外一种遇到WRP的情况是,当你的应用程序尝试覆盖某个系统文件时。正如前面提到过的,XP允许这种事情发生,但是Vista就不能。这种情况比较少见。
Vista的IP堆栈改变
Vista引入一个彻底重写的网络堆栈以同时支持IPv4和IPv6。但是这个改变会引起一系列产品的兼容性问题,如防火墙,网络扫描程序,杀毒软件和虚拟软件,这就意味着要对产品进行升级。
不过对于大多数的普通用户来说,虚拟软件和网络扫描软件是很少甚至不会使用的,这样的话,遇到问题的机会会少一些。
版本检查
目前很多应用程序都不能进行正确的版本检查,这通常是由于软件针对某个特定版本的操作系统或浏览器进行开发的结果。
所以运行这样的程序后通常会显示“不支持的系统”,或者什么都没发生就结束运行。不幸的是,这只能通过测试才知道。
用户帐户控制
用户帐户控制(UAC)引入了一系列技术来描述某个应用程序兼容性问题。文件和注册表可能会引起很多应用程序兼容性问题,这些程序是通过文件来进行设置,而相应的文件是存储在普通用户不能写入的地方。
另外一个可能会遇到UAC的是“受保护的管理员”模式。当属于本地管理组成员但并不是实际的管理员的用户登录时,他们的帐户是受到限制的。
会话0隔离
会话0隔离是Vista的新功能之一,它意味着任何作为系统进程运行的东西,如服务或设备驱动,不能为已经登录的用户显示UI或与其进行交互。这就意味着来自某个服务或系统进程的弹出消息将不会对用户显示,并且如果你的应用程序在等待某个响应的话将一直挂起,因为用户并没有看见相应的响应消息界面。
IE的受保护模式
微软打算把Vista中的IE7构建成最安全的浏览器,但是更高的安全性的同时也意味着更多的兼容性问题。
Windows x64
如果你正迁移到x64版本的Windows,在你迁移到Vista过程中将要考虑更多额外的东西。Vista将不再支持16-bit的应用程序,并且任何驱动都要针对x64版本的平台进行重写。任何32-bit带有shell扩展的应用程序也需要更新到新的版本。
报告的作者最后表示,他所运行的应用程序有很高的几率--在不用做任何修改的情况下,就可以很好的在Vista运行。所以Vista的兼容性还是令人满意的。