快捷搜索: 王者荣耀 脱发

C++程序启动时报“0xc0000022”无法启动的错误

360安全卫士怀疑C++程序依赖的某个dll包含病毒行为,将该dll库隔离了、锁定住了,禁止其他程序访问该文件,导致C++程序启动时报错,启动失败。本文简单地讲述整个问题的排查过程,给大家提供一些借鉴或参考。

1、问题描述

某天要使用VS调试C++代码,结果调试运行Debug版本的C++程序时,弹出如下的报错提示框:

很是奇怪。最开始以为是不是程序依赖的库有问题,于是将相关的库代码重新都编译了一下,但问还是无法启动程序,这是啥情况?其实当时应该用windbg挂一下的,可能是直接能找打原因的,但当时忘记了,等问题解决后就没有现象了。

2、查找到异常值0xc0000022对应的标识STATUS_ACCESS_DENIED

这段时间经常遇到这样那样程序启动报错的问题,所以想深入研究一下到底是怎么回事。于是到百度中以“0xc0000022 msdn”为关键字搜索了一下,搜到了msdn上关于该错误码的相关说明:

经验分享 程序员 微信小程序 职场和发展