应用程序无法正常启动0xc000007b vs

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/keneyr/article/details/89266169

我现在碰到了一个问题,就是vs编译工程没有问题,也能产生正常的exe文件。但是一运行(不调试),就报错:

阿西吧!!!!!!!!!!!!!!!!!!!!!!

又是调x64平台又是x86平台已经折磨死人了。为什么还有这些令人口区的问题啊啊啊啊!!!!!!!

不过很神奇的是,我直接进入项目的Debug文件夹下,点击exe文件,是能出来东西的。不过不是按照我所编程的目的出结果就是了。

好了那么我们怎么解决这个问题呢?

参考博客:https://blog.csdn.net/electech6/article/details/78719788

参考了上面的链接,我认识了dependancy walker。这个软件好神奇的诶。在官网上下载就行了。如何用这个软件呢?

参考博客:https://blog.csdn.net/swort_177/article/details/5426848

今天我就要用这个软件分析我生产的exe文件,来找出不能正常启动的原因:


如果你在用这个软件打开东西的时候,发现一直没有相应不要着急啊。它就是分析的很慢,毕竟要展开那么多东西。耐心等一会儿就行了。

可以看到我的exe文件在用到OPENCV_WORLD300D.DLL的时候是红色的,说明问题在这个文件上。然后我再展开,我发现:

最容易的猜测就是可能是因为环境变量调用的dll和当前目录的不一致引起的。我就把我SYS64目录下的这两个dlll文件复制到exe同一目录下了。但是然并卵,并没有什么用。


参考该博客:https://blog.csdn.net/xianhua7877/article/details/80815253

怎么说x64的电脑,Sys32才是放的64位的dll文件,而syswow64下面放的是32位的dll文件呢?难道真的是这样??

我试着把我系统下的sys32和sys64下这两个文件对调了一下,但是并没有用。还是出错。


于是我参考该博客:https://blog.csdn.net/dyt443733328/article/details/81911263

试图通过黑窗口进行扫描,你看,还没扫描完。那我睡一觉去吧。。。:

睡一觉第二天醒来,依然是报错。。。excuse  me?????????????都别拦我,我要把电脑摔了、


继续反思。。。。。。。。。。。。。

既然是这个问题,那肯定动态链接库出问题了。从软件的分析截图也可以看出,是MSVCP120d.dll和MSVCR120d.dll出了问题······

经过长达10多个小时的折磨,我已经忘记了我都做过了什么。。。总之,在vs2015上能够运行了。

我是x64平台,我的所有变量配置也都是64的。我之前的dll文件64和32并没有放颠倒。我只记一下我所有的配置吧。如果以后还遇到这种问题,就参照这个配置:

系统环境变量:

-------------------------------------------END---------------------------------------------------- 

二更:

系统环境变量改为如下,这是PATH的:


三更:

这是调试的时候加载的主要dll文件,可以看到,重要的dll文件都没有成功加载,虽然路径下确实有这个文件:

猜你喜欢

转载自blog.csdn.net/keneyr/article/details/89266169