VS运行时报0xc000007b错误
Posted charleechan
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VS运行时报0xc000007b错误相关的知识,希望对你有一定的参考价值。
参考:
https://blog.csdn.net/u010205478/article/details/88682932
https://www.cnblogs.com/hbccdf/p/dllchecktoolandsyswow64.html
https://blog.csdn.net/norsd/article/details/81288681
现状: 一个VS项目,build完成了,运行时却报0xc000007b错误,无法运行!
查看依赖项
- 使用开始菜单,输入"VS2015 本地工具命令提示符",运行之.
- 输入
dumpbin /dependents [文件路径]
,比如要查看c盘根目录下的a.exe就输入dumpbin /dependents "C:a.exe"
- 发现有几个依赖项;
检查依赖项是否可以访问到
- 使用Everything检查这几个依赖项是否存在系统路径"C:WindowsSystem32" and "C:WindowsSysWOW64"里,以及exe同一目录里等;
根据大佬分析,System32目录存放的是64位的dll, SysWOW64目录存放的是32位的dll. 32位应用程序(exe)等访问System32目录下的任何文件时,会被自动映射到SysWOW64目录. 64位应用程序(exe)可以直接访问两个目录.
检查依赖项的版本是32位还是64位
- 如果所有依赖的dll都在能访问到的路径,那么可能是dll的版本与应用程序(32位)不匹配.使用denpends.exe软件(Dependency Walker)可以查看到依赖项DLL的版本,
使用文本编辑器查看你已有dll的版本也可以: 第2行的PE后面跟的是d,表示64位DLL,如果跟的是L,表明是32位的DLL文件
- 把该DLL替换成32位版本即可.
以上是关于VS运行时报0xc000007b错误的主要内容,如果未能解决你的问题,请参考以下文章
vs+opencv+qt 出现错误:应用程序无法正常启动(0xc000007b)
调试版本运行但发布给出 0xc000007b - 缺少 dll?
安装完VS2010,打开时发现错误提示:应用程序无法正常启动(0xc000007b)。请单击“确定”关闭应用程序。