查看: 2221|回复: 2
收起左侧

[软件] 一个奇怪的Win7下DirectX 9.0C异常问题

[复制链接]
gunman30
发表于 2015-12-9 21:46:41 | 显示全部楼层 |阅读模式
本帖最后由 gunman30 于 2015-12-9 22:00 编辑

系统环境:ThinkPad预装Win7 64位家庭普通版
游戏:2010发行的《拿破仑:全面战争》

运行游戏,提示“d3dx9_40.dll文件丢失”,根据网上资料,为Win7缺失DirectX 9.0C文件所致,可通过安装DirectX 9.0C或将d3dx9_40.dll放到system32文件夹(或游戏目录)解决。将文件放到system32后,尝试运行regsvr32 d3dx9_40.dll注册文件,提示“模块d3dx9_40.dll已加载,但找不到入口点DllRegisterServer”。

于是安装DirectX 9.0C,游戏错误提示变为“IGameExplorer could not verify access. Napoleon: Total War will now exit”。

将系统还原至出厂设置,惊奇地发现将32位版本的d3dx9_40.dll文件放入游戏目录后(没注册,直接放入,系统是64位),游戏可正常运行,而64位版本则不行。然而好景不长,玩了几次后,某次登陆系统,提示“Windows正在配置”(上一次登陆我并没有安装任何补丁,系统也没有设置自动更新),登入后“IGameExplorer could not verify access. Napoleon: Total War will now exit”重现。再安装DirectX 9.0C,问题如故。再将系统还原一次,还是不行,碰到莫名的“Windows正在配置”就开始玩不了。

初步怀疑是Win7系统自动修改了某项设置,导致游戏无法正常读取d3dx9_40.dll。但苦于系统软件知识缺乏,不知如何入手。望前辈指点一二。

P.s. 原版Win7系统新装时会通过索引和预读提升系统性能,不知上述异常是否会与之有关。题主是一枚工科生,也是一枚军事爱好者,学习之余偶尔玩玩全战,给之前充实但略显单调的生活带来了滋润。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x
棒棒小星星
发表于 2015-12-10 13:15:14 | 显示全部楼层
把目录下的dll全部注册了
asmreg
发表于 2015-12-10 14:32:21 | 显示全部楼层
本帖最后由 asmreg 于 2015-12-10 14:33 编辑
棒棒小星星 发表于 2015-12-10 13:15
把目录下的dll全部注册了


不分青红皂白地注册全部dll会出现各种莫名其妙的问题,而且不是所有dll文件都是可以注册的。
正常提示文件丢失的处理方法是将缺失文件对应的组件(如d3dx9_40dll对应DirectX9.0c、msvcp100.dll对应VC++ 2010 redistributable 组件包等)进行完整安装,而不是简单地把文件放到system32目录下。
在64位的Windows 7系统中,64位的系统文件在\Windows\System32目录下,32位的系统文件在\Windows\SysWOW64目录下,如果乱放的话也会导致各种问题。

建议将系统还原至出厂设置后安装directx_Jun2010_redist.exe,看问题能否解决。
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2025-1-15 20:35 , Processed in 0.146174 second(s), 17 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表