在某些用户的设备上,会发现自己的软件会在启动之后过一段时间就崩溃了,一个可能的原因是自己的软件被其他广告软件注入了,如 上海展盟网络科技有限公司的 gamebox 组件
一个已知问题是海展盟网络科技有限公司的 gamebox 组件将会进行进程注入,在一些软件的进程上,会因为 gamebox_shell.dll 访问了不可访问的内存后,引发 C0000005 错误被系统强行结束
因此如果软件崩溃了,可以尝试拿到 dump 文件,看是否有 gamebox_shell.dll 的存在,如果有,那么也许就是此问题了。调试方法如下
先下载微软极品工具箱 ProcDump
然后使用以下命令启动 procdump 程序
procdump -ma -a 进程PID
上面的 进程PID 可在软件启动后拼手速快速输入
拿到完整的几百兆的 DUMP 文件后,下载到开发人员计算机上“使用本机调试”
此时也许可以发现异常堆栈出在 gamebox_shell.dll 中,如下图