应用程序无法正常启动(0xc0150002)的解决思路
背景介绍
记录一次在工作中遇到的问题:编译都没有问题,但是非常简单的EXE启动时会报错:应用程序无法正常启动(0xc0150002)。单击“确定”关闭应用程序。
,提示错误码:0xc0150002
。
现象
现象1
无法启动此程序,因为计算机中丢失VCRUNTIME140_1.dll。尝试重新安装该程序以解决此问题。
现象2
应用程序无法正常启动(0xc0150002)。单击“确定”关闭应用程序。
解决
现象1很显然, 缺少运行库。 你如果安装了visual studio, 那么其安装目录下xxx\Microsoft Visual Studio\2019\Professional\VC\Redist\MSVC
会存在需要的运行库或者是运行库安装包。
在缺少的电脑上安装即可。
本文的重点是现象2, 现象2给出的线索很有限。 这种错误的出现, 操作系统都会记录日志。 如何查看事件日志:
- Win+r 打开运行窗口
- 在输入框中输入
eventvwr.msc
- 打开后, 点击左侧
的windows 日志
>应用程序
- 为了能快速定位到日志,可先清理日志,再执行一遍出错的程序。
如果日志中提示找不到运行库的错误:只需找到所需版本、系统的运行库, 安装或者复制过去即可。
后来经过分析和定位才找到真正的原因:在自己开发的程序中引入了vld_x64.dll
动态库导致错误0xc0150002
的出现,后来在Debug版本中屏蔽以下代码后问题就解决了:-)
1 |
总结
如果类似错误都可去看一下系统日志进行定位,多半是依赖的库缺少或者是版本问题。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 竹山一叶!
评论