许久以来一直被一个问题所迷惑:就是在winxp下,一旦打上了sp2补丁安装了directx9b后就无法安装directx9c,现象是一执行安装,一闪就完成了,然后就显示安装的组件可以使用。 如果这时侯运行Sim2(虚拟人生2)时,就会提示failed to enumerate any directx 9 compatible graphics adapters in this system汉化后的意思就是有一块不支持directx9的显卡 或者提示:无法找到D3D9.DLL,官方解释是directx9c没有完装。 而且运行极品飞车之地下狂飚2是会提示出错,要求报告错误。 网上也有游戏迷反映魔兽世界wow无法安装,也是出于这个原因。 运行dxdiag,显示系统仍旧是directx9b,而刚才安装的directx9c并没有办法安装成功。 到微软网站下载正式的多国语言版directx9c仍然出然这样的错误。 到显卡的厂商查询,我的显卡GeforceMX400与ATI Readon9000 的确不支持directx9c,但游戏厂商说对于不支持directx9c的显卡,可以在模拟directx9c的效果下运行。 新浪游戏的论坛专区中一网友精华说到: “注意:你回想一下,安装DX9c的时候是安装了有两、三分钟还是一闪而过立即完毕?一闪而过说明你根本没有装上!为什么会装不上?因为你是系统是SP2!为什么SP2没有办法装C版?我不知道!总尔言之,想玩这个游戏,你还得是SP1,SP2用户有什么解决方法?有,重装系统。” 其实耐心分析一下原因,就会知道,其实是因为在sp2下与directx9c有兼容问题而无法安装造成了。后来微软发现了这一问题,在后来的新的updata更新中,装directx9c直接集在新的sp2中,通过自动更新的方式升级以解决这个问题。 当然其中的一个解决方案如新浪的解释,可以重装winxp sp1来解决,但这是以牺牲安全性为代价的,难道非要这样不可吗? 当然不是,现提出以下几点解决方案: 1.使用 安装 DirectX随意卸2.01 (一定要使用注册版,可以在本版附件中下载) (1)在本站下载安装该软件,并且注册以使用将要用到的功能 (2)启动软件后选择“备份/回滚” (3)选择“备份Windows XP 原始的directx8.1”中间需要插入winxp安装光盘。安装过程中出现系统文件保护对话框,不用理会。 (4)重启以后,提示建议在安全模式下,再次执行卸载操作,以彻底清除未能删除的系统文件,不用理会,取消就行。 (5)再次运行 DirectX随意卸2.01 选择“备份/回滚” 中的红色的第一项:为windows xp sp2安装 DX9.0c ,点击“浏览”指向硬盘中已经解压好的directx9c安装文件目录,就可以正常安装directx9c了。 (6)再次重启系统,安装运行需要directx9c支持的游戏与软件(sim2与极品飞车),呵,一切ok。 2.有网友指出,在还原到directx8.1后,把directx9.0c所有文件,全部解压到directx9.0b的安装目录下,再执行安装directx9b,也可以安装成diectx9.0c。 3.如果你是正版xp,上网更新方便的话,可以通updata自动更新到最新版的sp2,其中自动集成到directx9c. 4.还有人说到可以通过修改注册表的方法解决该问题,记得电脑报上曾经有过技术文章与之类似,希望知道方法的同志指教一下哈。 5.由于DirectX 9.0c的安装包里有两个程序(dsetup32.dll和dsetup.dll)负责在每次安装前检测系统的DX版本,如果与自己的版本相同或更高就不继续安装,但不知为何它安装的时候无法正确检测WinXP的DX版本,所以才出现了的安装完成的画面。而我们也就将计就计地骗了XP一下,将DirectX 9.0c中的这两个文件替换为9.0b的,这样安装程序就能正常检测安装了。 总结一句,其实不是所谓的xpsp2与directx9c不好,也不是非重装才能解决问题。如果我们遇到问题,并且善于分析原因,找到恰当的方法与使用恰当的软件是一定能够加以应用解决,而那种在研究解决难题后的收