问题描述

今天出现了C程序在本地VS上面运行正常,生成的exe文件在本地使用命令行调用也正常,但是放到服务器使用命令行调用上就出现“the application was unable to start correctly(0x000007b)”的问题,如图:

解决过程:

1.使用分析工具(Dependency Walker)分析dll依赖问题

这个软件可以分析exe、dll的依赖项,用来查找调用了哪些依赖和缺少哪些依赖,官网下载。
**使用方法:**将exe、dll拖到Dependency Walker程序窗口即可。

缺失的dll会以黄色问号显示,可以根据这里缺失的DLL名称来在网上查找解决方案,本次问题的解决就是查了缺失VCRUNTIME140.DLL这个动态链接库才查询到问题所在的。

也可以根据底下的信息查找解决方法:

2.查找解决问题的方法

通过查询VCRUNTIME140.DLL,看到别人的一些解决方法:

C++2015卸载重装一遍 或者下一个directX增强版把vc运行库检查一遍
https://tieba.baidu.com/p/5370368791?red_tag=1965842565

这样我们就知道这应该是vc的运行库依赖有缺失,接着查找,最后解决方法如下:

VS静态编译C/C++解决程序丢失 VCRUNTIME140.dll
https://jingyan.baidu.com/article/a681b0de7a173c3b1843462b.html

方法:在项目上右键进入属性页面,将运行库改为 多线程(/MT) 即可,如①处。

注意:②处需要对应,如果你配制的属性页是Debug模式的,但是生成的是Release模式的,那么你会发现配制根本不生效。

之后再进行项目的生成,此次的问题就解决了。

附加:

1.Dependency Walker使用&注意

如何正确查看dll依赖,并查找问题:
对于系统的DLL可以不用展开看,但是用户自己的DLL一定要展开,看看它里面还调用了哪些DLL,因为如果这个DLL缺少依赖的DLL势必影响到我们的程序的运行。

如何防范生成的软件dll依赖缺失问题:
严格的讲,在我们发布应用程序时一定要看看程序需要哪些组件依赖的,需要的就把它带上。因为用户的电脑上是没有开发环境的,不可能有这么些特定编译器的运行库。
https://blog.csdn.net/mfcing/article/details/45933397

如上面引用的文字所说,我们如果要防范这样的问题,我们需要查看我们自己引入的DLL,例如AVCODEC-57.DLL,AVUTIL-55.DLL这些。
但是本例中并不是自己引入的DLL问题,根据前文所说,我们已经知道了是VC运行库的缺失(也就是开发环境中带的DLL),如下图:

这样我们就能想到,我们应该将开环环境中的依赖也一起打包,具体操作就是改变VS中运行库的选项。

2.使用VS编译选项“运行库”介绍:

运行库就决定了程序是动态链接还是静态链接,详细如下:

动态链接为D,静态链接为T。
两者的区别在于,静态链接将程序所依赖的运行库集成到了可执行文件中,可执行文件运行时不再需要运行库;动态链接没有把程序所依赖的运行库集成到可执行文件中,可执行文件运行时需要运行库。
在调试模式下,使用调试运行库:多线程调试(/MTd)、多线程调试DLL(/MDd)
在发布模式下,使用发布运行库:多线程(/MT)、多线程DLL(/MD)

https://blog.csdn.net/qq_33757398/article/details/82156956

本次程序是Release模式的程序,所以我选用多线程/MT,将VS开发环境中所需要的运行库打包进程序,问题得以解决。

解决the application was unable to start correctly(0x000007b)与 缺少VCRUNTIME140.dll相关推荐

  1. the application was unable to start correctly(0x000007b)解决方案

    遇到程序崩溃的一般解决步奏 1.调试程序,定位到崩溃到码处.如果是系统代码处的问题,可以复制改行代码在百度上搜搜看:如果是你自己写的代码,那么我想改起来就更简单了. 2.一般我们所遇到的程序崩溃问题网 ...

  2. 解决错误:the application was unable to start correctly 0xc00007b,应用程序无法正常启动(0xc000007b)

    环境: Win7 64bit+ VS2010+ OpenCV247 前几天还运行的好好的程序,今天突然出现了这个错误: the application was unable to start corr ...

  3. The application was unable to start correctly (0xc000007b)

    用VS2013建立了一个c++ console application,然后引用了一个DLL, 启动的时候报错: The application was unable to start correct ...

  4. The application was unable to start correctly (0xc000007b)的勉强解决方案

    在我的电脑上,Unity 3D和有道词典的安装包(UnitySetup64.exe和YoudaoDictSetup.exe),启动时报错"The application was unable ...

  5. win7 dll怎么在xp运行_win7电脑安装软件提示缺少vcruntime140.dll如何解决

    最近有位win7系统用户使用电脑安装office2016的时候,系统却提示"缺少vcruntime140.dll",这导致了office2016无法正常安装,用户不知道怎么解决,为 ...

  6. win10缺少 `VCRUNTIME140.dll` 文件(解决篇)

    win10计算机 缺少 VCRUNTIME140.dll文件,如何解决? 故障截图: 解决办法: 下载VCRUNTIME140.dll文件:微软官网:下载地址 百度网盘下载地址: 文件下载:查看连接 ...

  7. 解决一个安装office2016缺少vcruntime140.dll的问题

    问题描述: 在安装并激活好office2016之后,双击word(显示:缺少vcruntime140.dll) 解决方案一: 1.下载vcruntime140.dll--2.复制到C盘windows ...

  8. 以为是 unable to start correctly (0xc0000142) 实际上却是 gfluidimgproc_func.simd.hpp文件找不到的解决方法(含opencv编译使用)

    起因 注意,下面的内容都是win10情况下发生的 在某些时候,我们从比较新的电脑上用vs,编译使用了比较新的opencv4.X库的运行程序,并且打算放到比较旧的电脑上使用时 会发现在动态链接库都是完整 ...

  9. vs调试程序缺少 msvcp140d.dll 解决方法

    vs调试程序缺少 msvcp140d.dll 解决方法 参考文章: (1)vs调试程序缺少 msvcp140d.dll 解决方法 (2)https://www.cnblogs.com/MCSFX/p/ ...

  10. 缺少vcruntime140d.dll的解决办法

    缺少vcruntime140d.dll的解决办法 原因:用vs2019编写的控制台程序拿到Windows7上去运行,提示系统缺少vcruntime140d.dll 方法一:安装Visual C++ R ...

最新文章

  1. get your subscription available at the moments on bilibili
  2. 教你必备Excel表格技巧。
  3. 第五节:泛型(泛型类、接口、方法、委托、泛型约束、泛型缓存、逆变和协变)
  4. gSoap客户端调用WebService完成后注意内存释放顺序
  5. 一般编译器错误_[翻译]MLIR:摩尔定律终结的编译器基础结构
  6. 解析 PowerJob 的序列化方案
  7. slid.es – 创建在线幻灯片和演示文稿的最佳途径
  8. linux+加载迅雷插件,linux下使用aria2c + chrome插件取代迅雷
  9. keymaker注册机之内在注册机教程
  10. html生物代码,方舟生存进化生物代码 手游生物指令大全
  11. idea 下查看项目代码量、行数
  12. cboard使用方法以及用户交互的两种方式
  13. TIM网盘批量下载方法
  14. 如何EDI标准文件转换为自定义XML?
  15. 中国传媒大学计算机考研调剂,2018年中国传媒大学考研调剂信息
  16. 四少女火爆外网!ControlNet组合拳效果惊人,颠覆AI绘画游戏规则
  17. 神盾加密php文件夹,[宜配屋]听图阁
  18. (七)Java垃圾收集器详解
  19. EasyNVR HLS流播放中断是什么原因?该如何解决?
  20. Redis进阶-主从,哨兵,集群

热门文章

  1. 博士申请 | 香港科技大学(广州)王林助理教授招收计算机视觉博士生
  2. 解析互联网广告术语 CPM、CPC、CPA、CPS、CPL、CPR 是什么意思
  3. GBIC模块、SFP模块、SFF模块介绍
  4. 数的变幻(小明买书)
  5. 服务器能不能用普通硬盘,服务器硬盘是什么 与普通硬盘区别
  6. 中国青年报:“宋祖德现象”考验道德与法
  7. 向量的数量积,向量积,混合积
  8. 搜狗收录提交入口之搜狗泛目录实现
  9. 厦门大学904数据结构与机器学习资料与辅导
  10. linux 管道 减号,linux shell环境减号”-”的用途