一种定位程序失去焦点的办法,元凶竟然是tx电脑管家!
一。开头
玩游戏的人可能会遇到玩着玩着游戏就弹出去了的情况,相当影响游戏体验。其实原因就是游戏的焦点被另外一个程序夺走了。一种简单的办法就是把全屏游戏设置为窗口化,这样游戏可能就不会弹出去,但是仍然会失去焦点,体现在游戏对键盘无响应。这个时候需要再点一下游戏窗口,才能又获取到焦点。
还有修改注册表的方法,可以参考这个帖子,我暂时还没试过:https://zhuanlan.zhihu.com/p/33227113
不过本文主要讲的是一种特殊情况,上面那帖子里也说了,到底是哪个程序把我们的焦点夺走了呢,有一个叫whoareyou.exe的程序,可以查出答案。直接双击运行这个程序,然后把它放那不管它,过一会儿看里面都显示出哪些程序,就知道是谁夺走了焦点。
如上图,WindowsTerminal.exe就是运行whoareyou.exe的时候打开的命令行窗口,肯定不是它的锅啦。而红框里的这个东西,我肯定是没有运行的,所以就是它夺走了我的焦点。
注意:如果你运行了whoareyou之后,你又去打开或者切换到别的界面,那它们都会显示到这个命令行窗口里,所以你需要自己去辨别一下,哪些是由于你自己的操作打开的东西,把它们排除。
二。重点
本文的重点并不是whoareyou,一般来说whoareyou就可以找到元凶了,不过我遇到的就是那个特殊的情况,就是上面那个图里的vcredist_x86.exe,这是一个vc运行库安装程序,然而它不可能是元凶啊,它自己是不可能主动运行的,肯定是有别的程序(元凶)去运行它。并且如果我把它删除了,元凶还会再把它下载下来,然后运行它。
让人纠结的是,它会不断地被运行,间隔时间从十几分钟到几十分钟不等。从安装日志里面可以看到它每次的运行时间。至于它为啥要运行这么多次呢,因为我电脑上已经装了一个比它新的运行库,没法再装这个旧的了,所以会装失败,然后就不停地装,真是xx。
我一开始想着是不是在任务计划里面能找到它,结果任务计划里的运行时间跟上面的日志的时间都对不上。
再后来突然想到,如果我把vcredist_x86.exe删除了,元凶会再把它下载下来,那下载下来的时候,得写硬盘啊,如果我提前把资源监视器打开,并且按写磁盘的速度降序排序,那下载vcredist_x86.exe的那一项很可能会排到前面,则最左边那一列“磁盘活动”就是元凶的进程名了。
当然,我不可能一直盯着看,它这个运行时间也不确定,盯着十几分钟也够无聊的,问题是有时候可能几十分钟甚至更久,所以我们可以搞个程序来监测,程序逻辑非常简单,首先我把C:\Users\kv183\AppData\Local\Temp\vcredist_x86.exe删除,然后运行我的程序,并且打开资源监视器,让资源监视器显示在屏幕上。
而我的程序会每0.5秒监测一下这个文件是不是又产生了,一旦发现它产生了,就开始截屏,1秒截一张,截个50张。(注,这些参数都可以根据需要自己调整),为啥要截50张呢,因为资源监视器显示的内容好像不是那么实时的,比如程序已经下载到硬盘上了,它可能过个一两秒才显示在资源监视器里。
不过有一点要注意的是,截图归截图,别立马把截的图写到文件里,因为一旦你写文件,那你这个程序自已就会出现在资源监视器里啦,尽量不要影响我们的监测,截了50张图之后一起写。
先上图。
可以看到,元凶就是腾迅电脑管家!
上代码,用python写的,需要安装的三方库有numpy,opencv-python,pillow。
import cv2 as cv
import numpy as np
from PIL import ImageGrab
import time
import osfile_path = r'C:\Users\kv183\AppData\Local\Temp\vcredist_x86.exe'
found = False
while not found:if os.path.exists(file_path):found = Truebreaktime.sleep(0.5)imgs = []
for i in range(50):img = ImageGrab.grab(bbox=(0, 0, 1920, 1080))img = np.array(img.getdata(), np.uint8).reshape(img.size[1], img.size[0], 3)img = cv.cvtColor(img, cv.COLOR_RGB2BGR)imgs.append(img)time.sleep(1)img_dir = r'd:\catch_you'
os.makedirs(img_dir, exist_ok=True)for index, img in enumerate(imgs):cv.imwrite(os.path.join(img_dir, '{:02d}.jpg'.format(index)), img)
-------------------------------------
更新:
后来有朋友私信我,腾迅电脑管家的这个问题升到15.2.22559.217及以上的版本就能解决啦,我试过了,确实可行!
一种定位程序失去焦点的办法,元凶竟然是tx电脑管家!相关推荐
- 程序员还在用360,腾讯电脑管家清理注册表,清理垃圾?只能说你太low
首先明明电脑上,就有清理垃圾和无用注册表的功能,只是我么缺少发现美的眼睛. 为什么不用360,腾讯全家桶. 那玩意固然香,而且真香,但是后台占用率太高,作为一个有洁癖的我,实在是不想看到自己右下角多一 ...
- 关于 UE4 (虚幻引擎4) 4.25.1版本提示“无法定位程序输入点 DXGIGetDebugInterface1 于动态链接库dxgi.dll上”的错误的解决办法
关于 UE4 (虚幻引擎4) 4.25.1版本提示"无法定位程序输入点 DXGIGetDebugInterface1 于动态链接库dxgi.dll上"的错误的解决办法: 1.原因: ...
- python 无法定位程序输入点ucrtbase_win7无法定位程序输入点ucrtbase.abort于动态链接库的解决办法...
最近有win7用户向小编反馈,在运行某些程序,比如文明6的时候会出现提示"无法定位程序输入点ucrtbase.abort于动态链接库api-ms-win-crt-runtime-l1-1-0 ...
- 无法定位程序输入点的一种可能
无法定位程序输入点的问题 1. 问题描述 2. 一般解决方案 3. 可能的隐秘错误 说明: 关键词: 无法找到入口 anaconda qt vtk 1. 问题描述 出现该问题的原因一般是 找不到动态库 ...
- win7 “无法定位程序输入点ucrtbase.terminate于动态链接库api-ms-win-crt-runtime-|1-1-0.dll”的解决办法
安装eclipse,出现"无法定位程序输入点ucrtbase.terminate于动态链接库api-ms-win-crt-runtime-|1-1-0.dll"问题,参照网络上的方 ...
- 无法定位程序输入点?isPublicID@QXmlUtils@@SA_NAEVVQString@@@Z于动态链接库 D:\Qt\Qt5.7.0\5.7\msvc2015_64\bin\Qt5Cored
Qt系列文章目录 文章目录 Qt系列文章目录 前言 一.错误原因是什么? 解决办法 前言 主要用到了InfraRender.dll这个动态库,这个动态库又依赖:Qt5Cored.dll.Qt5Guid ...
- 内存不能为read和无法定位程序输入点 +@于动态链接库上
内存不能为read和无法定位程序输入点 +@于动态链接库上 2011年06月13日 查看文章 写新文章 内存不能为read和无法定位程序输入点 +@于动态链接库上 2011-06-13 05:41 最 ...
- 计算机管理无法定位程序输入点,Word竟然“无法定位程序输入点 GetDateFormatEx”!...
昨天用电脑卫士更新了漏洞,今天打开word,发现打不开了,弹出提示"无法定位程序输入点 GetDateFormatEx 于动态链接库 KERNEL32上".一下子蒙圈了,电脑里好多 ...
- 一种定位内存泄露的方法(Linux)
2019独角兽企业重金招聘Python工程师标准>>> 目的: 本文是<一种定位内存泄露的方法(Solaris)>对应的Linux版本,调试器使用gdb.主要介绍实例部分 ...
最新文章
- 关于线程池ExecutorService的shutdown()与shutdownNow()方法的区别
- centos7 nginx配置php7,centos7下yum安装nginx和php7和php-fpm
- nRF51822 SDK初体验
- linux之errno值为104(connetction reset by peer)
- eslint关闭===替换==;eslint关闭全等于校验;eslint关闭==校验
- 千万量级只是5G商用起点?高通专家:5G部署速度比当初的4G更快
- linux的定制和发布(二)
- 20种语言说圣诞快乐
- 如何修复GitKraken Inotify Limit Error\idea erro - 升级Ubuntu / Linux inotify限制
- mysql+enable+sql+log_MySQL -- redolog + binlog
- 三分钟入门电力系统之----------三道防线
- WIncc7.4入门
- Java面向对象编程三大特征 - 封装
- 电压跟随器的稳定性问题
- (一)一文掌握flink性能优化:资源配置调优
- WPF 开源二维绘画小工具 GeometryToolDemo 项目
- 高德地图地理编码和逆地理编码,以及逆地理编码的时候如何去掉省、市、镇
- 网络 | email
- Qt编写可视化大屏电子看板系统30-模块8物料管理
- 【大数据之Hadoop3.x】