大家好,又见面了,我是你们的朋友全栈君。
最后更新:2021-3-1
请大家首先确定已经按照原文的方法及步骤尝试过,但是还是没有解决问题再来看这篇文章。如果你还没有看过原文,请先看原文:
http://blog.csdn.net/VBcom/article/details/6070705
看到这里的朋友,应该是看了原文但是没有解决问题。其实这个问题基本上就是由dll文件异常引起,但是为什么没有解决呢?请听我慢慢分解。以下会分8+10小项列举,建议每检查完一项,都运行一下游戏试试,要是行了就OK了,要是不行再试下一项。请注意,以下过程很重要,请仔细阅读,并且按照步骤一步一步完成。如果因为你看的马虎而漏过重要内容,那我就没法帮你了。
0xc000007b最可能的几种问题:
NO.1 DirectX或者C++中的dll文件仍有问题。
这种情况是最常见的,即你的系统中的DirectX组件或者C++组件的dll文件仍存在异常。出现这种问题的可能原因比较多,根据大家的反馈,可能原因包括还没用DirectX修复工具修复过;用的DirectX修复工具不是最新版;用的修复工具不是增强版;修复没成功,还有错误。如果你不是从我的博客上下载的最新版的DirectX修复工具增强版的,务必从我的博客给出的链接下载最新的DirectX修复工具增强版,并且确保所有的文件都修复成功。你也可以随时关注一下我的博客,看是否有最新的测试版发出来。新的测试版一般都会更新数据包、提升修复0xc000007b的能力。如果有某些文件总是修复失败,则最有可能的原因是文件被占用,建议重启电脑,退出一切无用程序(包括杀毒软件、QQ、浏览器、到任务管理器里结束QQProtect.exe进程等),并且在DirectX修复工具中开启强力修复功能后,再修复一下试试,一般都能成功。
NO.2 你用的盗版程序的破解补丁/软件本身有问题。
一般情况下,正版软件出现错误的概率小一些,盗版软件出错的概率比较大,其原因是盗版软件为了破解修改了原来exe/dll文件中的部分信息,如果破解存在BUG,则可能在部分电脑出现0xc000007b错误。通常来说,一个游戏或者软件都比较大,动辄几G几十G,但是破解补丁都比较小,一般都是替换exe文件或者steam_api.dll等文件,几MB就能搞定。所以如果是这种原因,建议你到其他网站上重新下载你的破解补丁,不太大,很快的,下那种大家都说能用的补丁试试。
NO.3 可能仅仅是解压异常导致的0xc000007b错误。
这种情况在腾讯的游戏安装包上出现的概率比较大。如果你是WeGame下载好一个游戏,在选择安装时就立即弹出了0xc000007b错误,那么基本上就属于这种情况。不光是WeGame,包括其他程序的安装包,比如百度网盘、QQ、钉钉等,在要安装时就弹出了0xc000007b错误,而不是已经安装好在运行程序时弹出的错误,都属于此类。此类问题的产生原因是系统内解压组件异常,导致程序自动解压时调用异常组件就会产生0xc000007b错误。对于此类问题,一般都是通过手动解压的方式跳过自动解压的过程,也就可以跳过自动解压过程中产生的0xc000007b错误。首先找到你下载安装包的位置,观察一下安装包的exe文件和其他文件是个什么状态。如果安装包就是一个exe文件,没有其他附属文件,比如像百度网盘、钉钉这样的,那就直接在exe文件上单击右键,然后选择直接解压到当前文件夹,即可跳过安装包自身的安装过程,同时也就跳过了0xc000007b问题;如果是游戏类的安装包,整个游戏好几十个G,但是安装包exe只有几MB,还有很多其他文件名按顺序排列的大文件,那么其实真实的游戏存在于这些大文件中,这是只要在排第一的文件上(通常文件名或后缀里有001之类的就是第一个)单击右键,然后选择直接解压到当前文件夹,即可跳过安装包自身的安装过程,同时也就跳过了0xc000007b问题。解压后,直接到解压出来的文件夹里运行你的程序即可。注意,如果要直接解压exe文件,需要系统里首先自己安装解压软件,比如7zip,360压缩等,都支持直接解压exe文件。
NO.4 出错的exe文件已经被病毒修改了。
这种情况有一定的出现概率,之前远程时也遇到部分用户有此问题。这种情况是你的系统里有病毒,把exe文件感染了,或者说你拷过来的exe文件本身就是已经被病毒修改了的,所以运行不了,出现0xc000007b错误。如果你的电脑里大面积的程序都出现0xc000007b错误,则极有可能是这种情况。这种病毒目测只会修改没有数字签名的exe文件,所以你电脑里的DirectX修复工具,一些网上下的小程序,都运行不了,但是Windows自己的程序,一些大公司带数字签名的程序还能正常运行。
这里插一句如何定量的确定到底是不是这种情况。只要在有问题的电脑上查看某个exe文件的MD5校验码,然后再到其他正常的电脑上查一查同样文件的校验码,看是否一致即可。比如,你的电脑上DirectX Repair.exe运行不了,出现0xc000007b错误。用校验工具查一下校验码,是多少拍个照。然后找一台正常的电脑,再从网上下一个同版本号的DirectX Repair.exe(千万别从有问题的那个电脑里直接用U盘拷出来,而是到网上重新下载,以免把病毒也拷出来,感染了正常电脑),再用校验工具查一下验证码(校验工具也从网上重新下,不要用U盘拷,以免拷来病毒),看是否一致即可。如果不一致,则100%是此问题。
出现这种情况,我只能说,两种办法。第一,先全盘杀毒,看能不能把病毒杀掉。如果毒能杀掉,则一切OK,程序又能运行了。如果病毒比较顽强,那就只有重装电脑了。重装时别用ghost,而是格式化C盘安装纯净系统,因为那个病毒可能就是从ghost里来的,如果你用ghost装,你会发现重装以后还是这个问题。关于这个问题我有一篇博客详细讲解了原因、操作步骤等,有兴趣的可以看看:《DirectX修复工具出现0xc000007b错误——分析与解决》。
NO.5 游戏本身不兼容当前系统导致的0xc000007b错误。
目前最新的微软操作系统是Windows 10,但还有很多用户停留在Windows 7。这些Win7用户在运行一些最新的游戏时(尤其是2020年及之后的游戏),会出现0xc000007b错误。这时请用户到游戏的官网(或者steam),看一看游戏要求的最低配置中操作系统一栏是怎么写的。如果写的最低要求Windows 10系统,那么Windows 7系统无论如何也是运行不起来的,即使不提示0xc000007b,也会因为其他函数问题而无法运行。比如之前有很多用户问我他们的刺客信条英灵殿为什么在Windows7上出现0xc000007b错误。后来经过远程查看,发现英灵殿最低要求Windows10操作系统,所以Win7用户如果确实想运行这些最新版的程序,只能升级到Windows 10。
NO.6 visual studio等编程软件的debug模式存在异常。
如果你用的是visual studio等程序开发软件,尤其是在debug模式下才会出现0xc000007b错误,而release模式下不出现,则基本属于此情况。第一步中说的DirectX修复工具,根据用户范围只包含了修复release模式下的文件的功能,debug模式下的文件暂无法修复(也许未来会支持)。所以如果你是这种情况,可以考虑直接进入release模式开发,或者自行解决一下问题。之所以DirectX修复工具没有包含debug模式的修复是因为我认为有能力使用visual studio编程的人动手能力一定超强,完全可以自己根据visual studio的错误调试信息解决问题。
NO.7 蓝屏时出现0xc000007b错误。
这种情况在Windows10下比较多,就是突然某一天重启系统后,发现进不去Windows了,直接蓝屏提示0xc000007b错误。这个的原因是Windows自动更新时,把系统组件更新坏了,或者更新的文件被杀毒软件误杀了,才导致本来正常的系统重启后进不去了。这种问题我建议直接重装系统解决。如果原来系统的桌面上有重要的文件还没拷出来,可以用U盘装个PE系统把桌面上、我的文档里的个人文件先拷到别的盘上,再重装,即可解决这个问题。
但是注意,如果你原来的系统开了bitlocker之类的磁盘加密,并且密钥没备份的话,千万别重装系统!根据非对称加密的原理,一旦重装,加密盘的数据一定会灰飞烟灭。而且,这种情况,即使进到PE里,数据也拷不出来。近来我也仔细研究了一下这种问题,普通人还真不好解决。如果你是这种情况,只能把硬盘给我帮你解决了,具体请E-mail联系。
NO.8 乌龙情况,蓝屏出现0x0000007b错误。
请大家仔细看,这条跟第6条不一样,这里的错误代码是0x0000007b。这个错误代码其实跟我要讲的完全没关系,但就是因为太接近了,才会有很多人误按照此文来解决。这种蓝屏不局限于系统,XP、Win7、Win10都有可能。这个错误主要是硬盘模式设错了导致的。比如你原先是IDE,你自己进到BIOS里改成了AHCI,那么再启动一定会0x0000007b蓝屏。也可能你没主动改硬盘模式,但你升级了BIOS,默认把硬盘模式改了;或者你装的ghost系统,那个系统的硬盘模式跟你现在电脑的不一致,这两种情况系统启动后也会出现0x0000007b错误。解决办法其实很简单,进到BIOS里,把硬盘模式改过来即可。如果BIOS里目前是IDE就改成AHCI,如果现在是AHCI,就改成IDE,再启动就能起来了。
当然,还有一些比较偏门、冷门的问题可能导致0xc000007b错误。下面梳理了一些问题,可能会导致0xc000007b错误,也可能导致其他错误,进而间接导致游戏运行不起来。下面这几条,建议仍有问题的玩家们也逐条梳理排查一下,可能会解决你的问题。
NO.9 你的显卡驱动是最新的吗?如果不是最新,或者你不知道是不是最新,那么请你到自己显卡的官方网站上下载最新的驱动安装一下。
ATI(AMD)显卡官网:http://support.amd.com/zh-cn/download
NVIDIA显卡官网:http://www.nvidia.cn/page/drivers_download.html
INTEL显卡官网:https://downloadcenter.intel.com/zh-cn
大家分别根据自己的显卡品牌到相应的网站上,根据自己的显卡型号和操作系统找到需要的最新驱动,然后下载、安装。也可以使用360驱动大师、驱动人生之类的自动驱动安装软件进行安装。
NO.10 你是否导入了注册表信息?有现在很多人用的都是硬盘版游戏,一般来说硬盘版游戏中都有一个或几个注册表信息文件,扩展名为*.reg,请运行该文件将信息导入注册表,否则可能会无法运行游戏。尤其是在重装电脑之后,必须导入这些信息才能正常运行游戏。本条只针对硬盘版游戏而言。
NO.11 你的游戏是否放在了全英文目录下?对于个别游戏来说,必须要将游戏置于全英文目录下才可正常运行。因此如果你的游戏不是在纯英文目录下,建议将其移到纯英文目录下再试。举个例子,把游戏从“C:/游戏/…”换为“C:/game/…”。同时,你还要确保你现在使用的Windows用户(就是一开机出现欢迎使用画面时对应的用户)不包含中文名字,否则的话建议新建一个英文名字的用户再试。
NO.12 你的Direct加速打开了吗?有很多时候,电脑的Direct加速莫名其妙地被关闭了,导致很多游戏运行不了。这个时候的提示可能是“请安装DirectX8.0或以上版本”或者“DirectX加速不可用”之类的提示。此时必须手动开启Direct加速才可以运行游戏,关于详细的开启方法,请参考我的博客《DirectX加速不可用、已禁用的解决方法》。
NO.13PhyX你装了吗?现在有很多游戏都支持PhyX,虽然只有NVIDIA显卡才能开启PhyX,但对于ATI显卡用户来说,也必须要装PhyX的驱动才可打开游戏。因此如果你是ATI显卡用户,玩的又是需要PhyX的游戏,那么你应该到上面提到的NVIDIA官网上找一下“NVIDIA PhysX系统软件”下载、安装。对于已经装了最新驱动的NVIDIA显卡用户,可以跳过此步。
NO.14 你尝试过兼容模式了吗?有些较早的游戏,由于编程时没有考虑到新版本Windows的特性,致使游戏无法运行。因此,可以尝试让游戏在兼容模式下运行。具体方法是,在游戏图标上单击右键,选择“属性”,找到“兼容性”选项卡,勾选其中的“以兼容模式运行这个程序”的复选框,具体选择在哪个操作系统上依据所使用的游戏、软件而定。一般可以选择Windows XP (Service Pack 3),如果不行的话可以考虑选择其他系统。
NO.15 你的Game For Windows Live装好了吗?现在很多老游戏(大约15年之前的,最新的基本都不涉及)都需要Game For Windows Live的支持,必须要装好才能游戏。有的系统会提示缺少xlive.dll文件,而有的系统会直接提示0xc000007b。因此不能忽视Game For Windows Live。
NO.16 你的Microsoft .NET Framework装好了吗?正版的Vista和Win 7里都内置了.NET Framework,但是盗版就不好说了。盗版往往会阉割一些内容,谁也不能保证有没有影响到.NET Framework。因此如果你的系统是盗版,可以试着装一下 .NET Framework 3.5。一般来说这个有问题的可能性不太大。
NO.17 如果上述步骤都无法解决问题,建议更换操作系统。我观察发现,这个问题在64位的电脑上出现的很普遍,极少数情况下也会在32位系统上遇到(我就亲身遇到过)。因此如果你用的是64位的系统,可以考虑更换为32位系统。出现这个问题的概率会大大降低,出现后安照原文的方法也很好解决。
NO.18 如果连更换操作系统后仍出现此问题,那么可能是硬件的原因产生了这个问题。在原文一开始我就说过,这个问题可能是由于硬件问题产生的。如果上述步骤都试了还是不行,可以考虑是否硬件存在问题。建议把内存条拔下来用橡皮擦一擦金手指再装回去,也许能解决问题。
以上的各条可能情况我都是按照概率从大到小排列的,建议按顺序尝试解决。如果你按照原文及以上8+10条内容试过后还是不行,根据大家和我E-mail交流的经验,最可能的原因有二:要么是看的马虎把文中重要内容错过了,致使问题没有解决;或者是下载的文件是自己从网上找的,不是从我给出的地址下载的。信不信由你,很多人没有解决来和我交流,我都是把文中的一些关键语句发给他们,他们照做了,问题就解决了。所以我还是要再呼吁一下,烦请大家抽出您宝贵的时间仔细看看文中的内容,按照文中的提示自己尝试一下。如果大家有什么问题还是不懂需要和我交流的,可以继续和我探讨。需要预约有偿远程调试的,请加(本文文章中的操作可以解决95%的0xc000007b问题了,剩下解决不了的都是一些疑难杂症,需要一定的时间精力远程查看分析问题,故收取一定费用,请谅解),其他一般问题需要咨询的,可以给我直接发邮件:
最后,我真诚的希望这篇博客可以帮助你解决你的问题。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/127621.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...