DirectX修复工具出现0xc000007b错误——分析与解决
- VBcom
- 2023-03-24
- 1988
大家应该对DirectX修复工具并不陌生,该工具主要就是为了解决0xc000007b问题而设计的(如果之前不知道这个工具的,可以参看DirectX修复工具增强版介绍)。然而,近日接连出现很多用户连DirectX修复工具也打不开,双击后也是提示0xc000007b错误(如下图),难道是医者不能自医?这是怎么回事呢?
图1. DirectX修复工具也出现0xc000007b错误(图片由网友提供)
问题描述:
先来详细描述一下这个问题的现象。首先来说,系统里有很多程序都打不开,都是提示0xc000007b错误。其次,很多之前明明能打开的程序,突然之间也打不开了,提示0xc000007b错误。最后,奇怪的是,并不是所有文件都打不开,有的打得开,有的就死活打不开,提示0xc000007b错误。
这个问题排查花了很久,最主要的原因就是出现概率极小,在我的电脑不能复现。不过,感谢那些热心的用户,给我发邮件交流,并且让我远程查看,总算是发现了问题的症结所在。在给这些用户远程时,我发现了一个问题,就是DirectX修复工具V3.7版的两个程序DirectX Repair.exe和DirectX_Repair_win8_win10.exe大小应该是782KB,然而,当我给他们检查时,发现在他们电脑里的大小分别是809KB(如本文图1)。再用校验码校验一下,果然检验值不同,换句话说,程序已经被修改了,所以会报0xc000007b错误打不开。
那么第一个问题就来了,是谁修改的程序呢?用户反馈他们什么也没操作,并不知道怎么回事。经过杀毒软件的甄别,结果就一目了然了,程序是被病毒修改,文件已经面目全非,所以报错无法打开。
那么第二个问题,为什么有的程序不受影响,有的程序就打不开呢?关于这点并没有确凿的证据,根据我的分析是这个病毒只能修改没有数字签名的文件,有数字签名的文件它动不了,无法修改,所以还可以正常运行。所以这就是为什么一些Windows系统和微软的应用还能运行,但是我的游戏、工业软件、还有一些不知名的小程序运行不了了。微软的程序有数字签名,平时用的游戏exe程序、DirectX修复工具的exe程序没有数字签名,被这个病毒修改了,自然就运行不了了(原版的游戏可能有数字签名,但是你用的破解补丁一定不是原版的,所以就没数字签名了)。
可能有人要问第三个问题,那把你的DirectX修复工具exe文件加上数字签名不就可以了?其他所有的exe都加上数字签名不就可以了?理论上确实是可以的,不过数字签名需要很复杂的注册、维护手续和费用,普通人是难以承受的,只有大的软件公司才能承担,所以说给所有exe都加上数字签名还有一定的难度。
解决方法:
Whatever,我不care这些过程了,最重要的一个问题,如何解决?解决办法其实很简单——杀毒!只要用你的杀毒软件全盘扫描,把所有感染这个病毒exe文件中的病毒都清除掉,让exe文件恢复原状,就可以正常运行了。有人会问,我的杀毒软件一直后台在开着呢,没提示有病毒啊?别太相信你的杀毒软件,有的时候它确实没有病毒能力强。你手动杀一下保证你有意外惊喜。另外,如果你正在用的杀毒软件查不出病毒,那么建议换用别的杀毒软件,应该也能解决。不过退一步来讲,如果你的系统真是已经病入膏肓各种杀毒软件都杀不掉的话,那么可能也只有重装系统才能解决了。
解决方案都有了,那么就还剩最后一个问题了,究竟如何判断到底是不是病毒感染造成的呢?对于新手或者说简单点的方法,就是看DirectX修复工具exe文件的大小;对于老司机或者可靠点的方法,就是看DirectX修复工具exe文件的校验码(校验工具链接)。如果文件大小或者校验码和官方标准的不一致(见下表),则可以认为是病毒修改了文件导致无法运行。下表是我梳理的历代官方DirectX修复工具exe文件大小和校验码,供大家参考。
历代DirectX修复工具属性信息一览表*
DirectX Repair.exe | |||
大小** | MD5校验码 | SHA1校验码 | |
V1.0 | 92KB | 48442db1d0745e9f33b8cf2bca6affbe | 7d0fa836cdb31ca3d823852b4b0b3b7c3f9ff3c2 |
V1.2 | 304KB | bf2bca6dff839a5e99a6ba0e5784affd | 03084040cc48c80059f6dfd3f6139cbcf340398b |
V1.2.2 | 313KB | 252b64908944fad7223fee7bc5f2d643 | 97f3c97c21ea039530d5367ad96ec197d9241cf1 |
V2.0 | 348KB | 0c857395e6f7186bd2b7aa365f248745 | 3cd06fe01f2fb858f890ef5f90266a5c20396158 |
V2.1 | 344KB | 66b4b148ff46797aa3e3be82cbc0eb36 | 5fb75f83e929c7efe7a22bb2d3dd7575f524ca01 |
V2.5 | 360KB | 5133feb9a5e2c84dcf83747d4f083cd8 | 1aed870879ad848ba93fe166fe1999d086a07f60 |
V3.0 | 337KB | 9e22e40f371dfe012b6d3dca4ad74753 | 48ed3b6d4afec4ac5efaa1c68df5bcacc67bf205 |
V3.2 | 375KB | 5f1fdd4764d1fa5ed199740b82fe23cc | d418f994881071e1c329f0f98fe704f6a5bb4266 |
V3.3 | 500KB | bb4083808ea490f99c7d49cd5a0ac48b | ba8c4895204a21a03abca0b910372aa2fdad5c29 |
V3.5 | 633KB | 529ecadde86c4baf3d5ca604002433ba | 6b6d177d6ad87a8d46e785e701f56b87fe814856 |
V3.7 | 782KB | 0615325098da4e624ef854af60b56ba2 | 2c94acc2ffcbdf6b1162dd250a29dbdea044d926 |
V3.8 | 832KB | 496c0cabab27c3c46abcfb387d4cfc3d | a6b1900b92c5894d9ac27192fe6b1f7894a4925b |
V3.9 | 862KB | eeab9900cc4c10da8e6b786e5f79d09c | dbb71b10f5341cf6936381c70d43f3cd4e7edef3 |
V4.0 | 1024KB | 16a1477a1e5e0cb16f1bcd3a1a01bf62 | b25543f6c60be291b86d13372de9e6fcd5446347 |
V4.1 | 1040KB | 554d12faa10e3b00edca22bae9edacf3 | 206a3b9baddd47c77e2f9616adfb9e579aaf9cf0 |
V4.2 | 1044KB | f61358dffab6bfb11683d21f7d5de6c9 | 74aab8f93add1de58b8d3ed0ed1d1faa38d964a8 |
*此表中仅列出已公开发行的版本。内测版、公测版、特别版等未公开发行的版本未作统计
**文件大小仅供参考,不同系统显示的值可能略有区别。比如V3.9版,显示862KB或者863KB都是正常的,但是如果显示889KB等明显大于正常的数值,则说明文件被篡改
最后插几句题外话:网上可能会有一小部分人说,诶?怎么回事,怎么杀毒软件检测你的DirectX修复工具提示有病毒?其实DirectX修复工具本身是绝对不含病毒代码的(要不然也发布不出来,各个软件站在发布软件的时候都有卡巴斯基检测、瑞星检测、360检测、小红伞检测等一系列检测,如果有病毒,软件站也不会往外发的),而之所以你检测到病毒了,是你把DirectX修复工具下到你的电脑里后,你电脑里的病毒把它感染了,而非本身就有病毒。相反,当你的杀毒软件提示DirectX修复工具有病毒并自动清除病毒后, DirectX修复工具才恢复了本来的样子,这时才可以在你的电脑上正常运行。所以如果你遇到了类似情况,不要主观第一感觉认为就是DirectX修复工具的问题,相反,可能是你电脑本来的问题。
还有一种更可怕的情况,目前有一部分钓鱼网站,专门蹭热点发布一些热门应用,但是他们提供的就是盗版的、有病毒的、别有用心的恶意程序。如果你不小心从这些钓鱼网站下载了DirectX修复工具,中病毒导致电脑用不了是小,电脑里有的QQ微信网银全被盗号也不是没可能,对于这种情况大家一定要擦亮眼睛,至少目前我就发现了两个盗版DirectX修复工具的情况,在这我就不点名了,只能跟大家说,去正规网站,或者我博客里链接到的下载地址(传送门:标准版、增强版、在线修复版),应该可以说还是安全的。
总结:
导致0xc000007b问题众多,一般情况下都可以通过使用DirectX修复工具增强版修复解决。可是如果连DirectX修复工具自己都出现0xc000007b错误,则极有可能是病毒修改了文件导致,可通过全盘杀毒,或换用其他杀毒软件全盘杀毒解决。判断是否为病毒作祟的方法是看DirectX修复工具exe文件的大小或者校验码是否和本文表格中的一致,不一致就是病毒修改导致(校验工具链接)。
发表评论