问题描述
- Chrome浏览器所有页面崩溃,包括设置页面,“喔唷,崩溃啦!”
- 显示错误码:STATUS_INVALID_IMAGE_HASH
- Chrome所有插件报错,右下角一串弹框
问题所在
Google在79版本(2019年12月20号左右)的更新中又重新启用了Renderer Code Integrity Protection(渲染器代码完整性保护),会阻止签名不是谷歌和微软的模块加载。该功能已经在之前一个版本中导致同样的问题,并由Google自己禁用了。
解决方法
禁用谷歌chrome的这项功能
Win+R
打开运行对话框,输入regedit
打开注册表编辑器- 导航到
HKEY_LOCAL_MACHINE SOFTWARE Policies Google Chrome
- 在右边窗口中,右键单击
新建
>DWORD(32位)值
以创建新密钥 - 双击它,然后将值名称改为
RendererCodeIntegrityEnabled
,并将值数据输入为0
- 重新启动chrome
相关小技巧
这是在找chrome的冲突dll的时候学到的技巧,平时没什么用,至少现在是,但以后谁说得准呢
- chrome临时禁用sandbox启动
在启动时用命令覆盖
Win+R
打开运行窗口- 输入
chrome.exe --no-sandbox
,回车
- chrome禁用某个功能
在启动时用命令覆盖
Win+R
打开运行窗口- 以禁用RendererCodeIntegrity为例,输入
chrome.exe --disable-features = RendererCodeIntegrity
,回车
- 显示chrome客户端加载的模块列表
在导航栏输入
chrome://conflicts/#R
- 检查事件日志
Windows事件日志将包含有关拒绝加载模块的信息,排查上面这个chrome崩溃错误时的方法:
- 右键开始图标,打开事件查看器
- 展开
应用程序和服务日志
>Microsoft
>Windows
>CodeIntegrity
>可操作
- 查找ID为3033的事件
- 详细信息将指示导致崩溃的dll的名称和位置
参考资料
- 问题尚在:新安全功能仍致谷歌Chrome 79出现“Aw, Snap!”崩溃
- Aw, snap! What if Every Tab Crashes?
吐槽
- 百度、必应的搜索引擎是真的不行,有价值的文章根本发掘不出来,一搜全是百度知道,其实百度什么也不知道,然后google牛批
- RendererCodeIntegrity这个错误可以用删冲突dll的方式解决(详情参上),但治标不治本,因为你不知道你未来使用的软件会不会也冲突,到时候又要找好长时间。比如一些大佬找到了自己机器上的冲突的dll,并把这种删除特定dll的方法放到网上提供参考,但没有解决后续的问题,所以会出现有些朋友删除特定dll后过一段时间又报错,或者是一些朋友的机器上根本就没有该dll的尴尬情况。此外,不要随便删除dll文件,因为这些东西是其它软件的运行依赖,如果随便删除可能导致其它软件运行不起来,实在不行重命名备份一下也可以
- 百度的软件大多数国内电脑用户的机器上都有,所以一般是百度的dll引起冲突。但这次真的是google和微软的锅,不要再无脑黑百度了,百度太难了。虽然百度挺恶心的,但这事儿真不怪他。如果电脑上只有百度网盘的话,根本不会引起这次的chrome崩溃