目录

1、案例说明

2、使用Process Monitor定位启动报0xC0000022错误时哪个文件被360拦截了

3、从根本上解决360等安全软件随意拦截我们软件的问题

4、最后


在我们的软件安装到客户装有360或金山毒霸的电脑上后,时常会出现被360或金山毒霸拦截的情况,甚至导致软件无法启动,无法正常使用。你们的软件是否也存在同样的问题和困扰呢?

有人可能会说,解决这个问题还不简单,直接将360这些安全软件都卸载了不就行了嘛,搞这么麻烦做什么?我们的软件是发布给客户使用的商用产品,是不能强制让用户去卸载360等安全软件的,这会严重影响用户体验,所以还是要从产品研发的源头来解决问题。

下面以360拦截为例,带着大家一起看看如何知道我们的软件是被360拦截的,怎么做才能让它们不再随意拦截我们的软件。

1、案例说明

在软件启动或者运行的过程中,时常在桌面右下角会弹出如下的360拦截提示框:

提示某某文件可能是病毒文件,如果用户不点击信任此文件,则360会自动将该被拦截的库给隔离住,用户将无法再使用该文件。如果点击信任此文件,则360不会拦截。但有时可能是在我们离开电脑的那段时间弹出来,这个弹框会定时显示几十秒,如果用户没有点击,超时了就会自动隔离文件,这样就会“神不知鬼不觉”地把我们软件用到的库给隔离了

一旦软件依赖的库被拦截隔离,再启动软件就会报错了,比如如下的报错:

对于有经验的人来说,大概能猜到可能是要启动的软件依赖的文件被360拦截了,然后打开360安全卫士的主页面:

找到恢复区图标按钮,点击进入对应的窗口:

再打开的窗口中点击可恢复区,将拦截的库添加到信任列表恢复一下就可以正常运行软件了。但有时我们再360上述页面中解除了360对某个文件的拦截,软件再次启动,可能还会报同样的错误,这时我们需要重启一下电脑,重启电脑后就好了。这是360的一个bug,即使你设置解除对被拦截文件的隔离,但360依旧将文件锁住了,只能等到电脑重启后才会真正的解除锁定。

2、使用Process Monitor定位启动报0xC0000022错误时哪个文件被360拦截了

我们启动软件时报这样的错误,我们有没有技术手段去查出到底时什么操作引发了这种错误呢?答案时肯定的,我们前面讲过Process Monitor工具,该工具可以监控目标进程的文件活动,下面就来讲讲怎么通过该工具去定位问题是怎么触发的。

首先我们来看看0xC000022错误码是什么含义。到网上以“0xc0000022 msdn”为关键字,进行搜索,在微软官方msdn的页面中找到对该错误码的说明:
https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-cifs/ab2b6ac6-161e-4826-885a-45b4d4834f18?redirectedfrom=MSDN

即0xC000022错误码对应的标记STATUS_ACCESS_DENIED,意思为无效的打开模式。

从这字面意思上看,我们可能不太清除是啥意思,我们将STATUS_ACCESS_DENIED拷贝到VS中,然后go到所在的头文件中,在头文件中看到了0xC0000022的详细含义:

从注释中可以知道,其含义是:当一个进程访问一个对象,没有访问该对象的权限,被拒绝了。

接下来,我们就用Process Monitor来定位启动软件时访问哪个文件被拒绝了。启动Process Monitor,在工具栏中找到漏斗一样的图标,这是用来设置监测过滤条件的,我们将我们的软件对应的xxxxx.exe设置为进程过滤对象(设置Process name项为xxxxx.exe):

然后在Process Monitor的工具栏取消对注册表等项的监控,只保留对文件活动的监控。然后双击启动xxxxxx.exe程序,Process Monitor中立即监测到pcmtwnd.exe进程所有的文件活动记录。以Denied关键字在已检测到的文件活动中搜索:

然后就能搜索到对应的那条记录,右键点击该行,在弹出的右键菜单中点击属性,就可以看到是访问哪个文件被Access Denied了:

知道哪个文件,我们就可以到360等软件中取消对该文件的拦截了。

以上是我们技术人员进行的专业的排查,但对于小白用户来说,他们是无法做到的。启动软件时弹出启动报错的提示,他们不知道这可能是360拦截文件导致的,再就是360提示被拦截的文件可能是病毒文件,他们默认可能会选择让360拦截的。那我们有没有办法从根本上解决被360拦截呢?即让360不再拦截我们的软件?答案同样也是肯定的,我们是有办法的。

3、从根本上解决360等安全软件随意拦截我们软件的问题

解决办法是,在每次发布软件版本之前,将要发布的软件安装包上传到360软件认证平台上:

然后进入开放平台的审核流程:

360软件认证平台会检查软件包中的文件是否存在存在病毒,如果经过检测后没有问题,会将程序中的文件信息记录到360的云管家数据库中,后面就不会再拦截当前上传版本的软件了。

金山毒霸也有类似的开放平台(金山软件认证平台):

可以在发布之前,将软件的安装包提交到该平台上审核,以解决金山毒霸对我们的拦截。

4、最后

我们的软件在每次发布版本之前,都会先提交到360和金山毒霸的开放平台上审核,已解决上述两个软件随意拦截我们的问题。希望能对大家有所帮助,有任何问题都可以在评论区和我讨论。

如何让我们的软件跳过360和金山毒霸的“随意拦截”?相关推荐

  1. 360软件管家android,360软件管家

    <360软件管家>,一款手机必备的软件管理平台.你可以通过这款软件来下载各种安全无毒的游戏.软件,还可以卸载掉各种顽固的插件和软件,让你的手机不再卡顿.快来下载体验一下吧. 软件详情 36 ...

  2. 360软件管家下载|360软件管家电脑版下载

    360软件管家是一款我简单很好的软件软件中[商城]频道,集"视频直播"."社区交友"."音乐阅读"."游戏"等多种商品于 ...

  3. 不用下载任何软件,比360强力删除还强的删除文件方法

    不用下载任何软件,比360强力删除还强的删除文件方法 当你遇到流氓.病毒软件的时候,是否因为不想下载360这个同样是流氓软件去使用360强力删除而焦虑? 下面介绍一个不用下载任何软件就可以实现超强力删 ...

  4. 强烈谴责所谓软件管家(360卫士,QQ管家,金山毒霸)并倡导普通用户卸载

    为什么80%的码农都做不了架构师?>>>    如果你的系统是WIN 7,那么告诉你,所谓杀毒软件实在没太大作用,能查的毒已经被WIN 7拒之门外,不能杀的毒它也不会告诉你杀不了,如 ...

  5. 如何利用画图软件跳整照片像素

    如何利用画图软件跳整照片像素 有时候常常需要修改照片的像素,比如用相机拍的数码照片修改为1寸的证件照,这里以风景图片为例,演示下如何用画图软件修改,步骤很简单,不用其他复杂的软件.修改前后图片像素对比 ...

  6. qq浏览器主页_讨论|360、金山毒霸、浏览器主页劫持

    说起浏览器主页劫持,大家肯定不陌生了. 自己明明没有设置浏览器主页,在安装某些特别软件后,打开浏览器却发现默认主页更头换面,成了其他网站. 对那些不懂点技术的普通网民来说,想重新设置浏览器主页,简直就 ...

  7. 360和金山毒霸那个好?

    说实话,我觉得,各有特点.如果说从桌面加速球和内部外观来说,我就得金山毒霸更胜一筹! 金山毒霸青春版界面很好,原版的也不错,而且杀毒能力非常强,但是,它作为一款老软件,是属于经营软件,有些很高级的东西 ...

  8. 测试开机速度一般用什么软件,国产安全软件横向测试 360开机速度最快

    本文观点及所引用数据仅用作传播,不代表本站观点 在安全软件的选择上,爱玩游戏.看视频的网友最怕的是"卡机",担心游戏和视频播放的流畅度被安全软件影响. 怎样衡量安全软件是否卡机呢? ...

  9. 为什么电脑点桌面软件跳计算机,电脑玩游戏为什么会跳桌面

    为什么电脑游戏跳到桌面 多样性问题. 分析1:在游戏中,意外情况出现,弹出窗口,但游戏没有退出. (游戏不兼容)分析2:进入游戏,黑屏,弹回桌面. (不支持配置)分析3:进入游戏后,按键会弹回桌面(C ...

  10. 软件跳过自动检测试用期,解除软件试用期限制(Zeal anyday)

    这个程序将去除一些演示软件和测试软件的时间限制,例如TCPMAN 3.0是一个Internet拨号软件,它允许你免费使用30天,超过此期限就必须重新安装软件.为了解除时间限制,你可以使用AnyDay程 ...

最新文章

  1. 网络工程师_想要记录下来的一些题_2
  2. python3写unicode编码到文件
  3. MobileNet-SSD
  4. Effective C++学习笔记——构造/析构/拷贝运算
  5. java数据类型转换方向_java基础学习篇02(数据类型转换和基本面试题)
  6. 文件浏览器一定要有个向上级按钮
  7. 2014年黑金FPGA原创教程规划发布
  8. html的过渡属性,CSS3中的元素过渡属性transition解析
  9. C与C++学习经典网站
  10. 2019年上半年英语四、六级成绩查询方式和时间
  11. 谷歌身份验证器验证码不对怎么回事_兼容谷歌验证器,开源的动态验证码小程序了解一下...
  12. 爬虫_app 1.1 导学
  13. iOS中SDK的简单封装与使用
  14. GERL 2020 (WWW)Graph Enhanced Representation Learning for News Recommendation
  15. 加固类计算机,关于我国计算机加固方面的标准
  16. 用d3.js画出带米字格的汉字
  17. Ubuntu磁盘扩展
  18. 【行业基础】什么是波形
  19. 设计模式之迭代思维:如何高效编程?
  20. 低代码如何助力石化行业数字化升级?

热门文章

  1. mysql8+maven+mybatis
  2. 林彪-怎样当好一名师长
  3. 真的明白Code、RO-data、RW-data和ZI-data吗?
  4. React Native 版本的商米打印 Demo
  5. java计算税后工资switch语句_计算个人所得税!switch语句
  6. 怎样从微博下载视频?
  7. 【3分钟带你学】Ajax
  8. 云计算以及虚拟化的简单介绍
  9. 北京最最最牛的IT公司都在这了
  10. docker使用阿里云的镜像加速器的地址