吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 5381|回复: 51
上一主题 下一主题
收起左侧

[原创工具] 使用Autoit3制作小程序实现自动移动鼠标防止进入屏保

[复制链接]
跳转到指定楼层
楼主
zhaopengdoctor 发表于 2022-12-22 11:38 回帖奖励
本帖最后由 zhaopengdoctor 于 2023-2-1 12:53 编辑

刚看了这篇贴子,想起自己之前用Autoit3做过一个类似的小程序,很简单的几句代码就可以实现自动移动鼠标,防止进入屏保,现在分享给大家。
公司电脑防止锁屏保护-移动鼠标小工具 Java实现
https://www.52pojie.cn/thread-1713325-1-1.html
(出处: 吾爱破解论坛)

我的代码:
[Asm] 纯文本查看 复制代码
#NoTrayIcon        ;隐藏托盘图标
While 1        ;载入内存
        $pos = MouseGetPos()        ;获取当前鼠标位置到变量pos
        MouseMove($pos[0],$pos[1],1)        ;移动鼠标指针到获取的坐标上,速度为1(最快)
        Sleep(50000)        ;50秒后重复运行
WEnd


运行说明:
双击程序即可运行,运行后没有任何提示,并且在托盘里也看不到图标,但在任务管理器中可以看到,想要结束程序,就得在任务管理器里面找。
由于屏保可以设置的最短时间为1分钟,因此该程序设置了50秒自动移动一下鼠标,对于比较慢的电脑也有10秒种的反应时间,足够了。
文件大小:618KB,并且占用的内存不大,可以放心使用。


如果想更方便使用,可以创建快捷方式,将快捷方式放到启动文件夹中,让该程序随系统自行启动。
我当时是写在了注册表的启动里面,具体怎样操作大家可以自行百度(两个月没有去单位办公了)。
下载地址:(附源码和生成的程序)
https://cowtransfer.com/s/8ac1ed04e79c47
解压密码:52pojie

以下为更新版本:
____________________________________________________________
代码:
[Asm] 纯文本查看 复制代码
#NoTrayIcon
#Region ;**** 参数创建于 ACNWrapper_GUI ****
#AutoIt3Wrapper_icon=favicon.ico
#AutoIt3Wrapper_outfile=自动移动鼠标防止进入屏保.exe
#AutoIt3Wrapper_UseUpx=n
#AutoIt3Wrapper_UseX64=n
#EndRegion ;**** 参数创建于 ACNWrapper_GUI ****

;仅允许只有一个脚本运行
; 请置于脚本顶部 
$g_szVersion = "我的脚本"
If WinExists($g_szVersion) Then Exit ; 此脚本已经运行了
AutoItWinSetTitle($g_szVersion)
; 下面是脚本的其它代码
While 1        ;载入内存
        $pos = MouseGetPos()        ;获取当前鼠标位置到变量pos
        Sleep(10)
        MouseMove($pos[0],$pos[1],1)        ;移动鼠标指针到获取的坐标上,速度为1(最快)
        Sleep(49990)        ;50秒后重复运行
WEnd

优化说明:
1.只允许有一个实例运行,在多次双击检测到已运行该程序时会自动退出后面运行的程序。
2.从获取鼠标位置到移动鼠标,中间加了10毫秒的间隔,几乎看不出来。
下载地址:
https://cowtransfer.com/s/69067cdf2d9e47

感谢加精及置顶,同时看到大家这么需要这个小程序,我努力把它做到更好。其实在自己使用时发现了这段代码有些不足,也在不断完善它,最近又有一些更新,公布给大家。
[Asm] 纯文本查看 复制代码
#NoTrayIcon        ;隐藏托盘图标
#Region ;**** 参数创建于 ACNWrapper_GUI ****
#AutoIt3Wrapper_icon=favicon.ico
#AutoIt3Wrapper_outfile=自动移动鼠标防止进入屏保.exe
#AutoIt3Wrapper_UseUpx=n
#AutoIt3Wrapper_UseX64=n
#EndRegion ;**** 参数创建于 ACNWrapper_GUI ****

;仅允许只有一个脚本运行
$g_szVersion = "自动移动鼠标防止进入屏保"
If WinExists($g_szVersion) Then Exit ; 如果此脚本已经运行,则自动退出新运行的程序
AutoItWinSetTitle($g_szVersion)        ;设置脚本标题

; 下面是脚本的其它代码
While 1        ;载入内存
        $pos = MouseGetPos()        ;获取当前鼠标位置到变量pos
        Sleep(10)
        MouseMove($pos[0]+1,$pos[1],0)
        MouseMove($pos[0],$pos[1],0);移动鼠标指针到获取的坐标上,速度为0(最快)
        Sleep(49990)        ;50秒后重复运行
WEnd

代码更新日志:
1.完善了每段代码的解释,可以让爱好者清楚每段代码的作用,可以根据自己的需要进行适当的调整。
2.将脚本的标题按脚本名称设置,而不是“我的脚本”。之前我在另一个脚本使用同样的代码,导致两个脚本只能运行一个,现在不会出现这种问题了。
3.在移动鼠标指针时增加了向右移动1个像素,然后移动回来。这个是基于我在使用之前的代码时会出现仍然会进入屏保的现象,分析可能是这里的原因,将鼠标直接移动到原位置,是不是会被系统认为鼠标没有移动。
4.移动速度的值从1改为0,看帮助里,0是速度最快的。
附代码和小程序0.6版本下载地址:解压密码52pojie
https://cowtransfer.com/s/5d84cb16c95443

有兴趣的坛友可以继续往下看:
再公布一段我目前自己用的代码,整合了自动移动鼠标功能和自动点击TC登录窗口按钮的功能,当时在循环上遇到了一些困难,毕竟不是计算机专业,没有基础。如果有更好的写法,欢迎为我提供建议和帮助,在此表示感谢。
[Asm] 纯文本查看 复制代码
;zhaopengsoft开机自动启动
#NoTrayIcon        ;隐藏托盘图标
#Region ;**** 参数创建于 ACNWrapper_GUI ****
#AutoIt3Wrapper_Icon=favicon.ico
#AutoIt3Wrapper_OutFile=ZPSoft.exe
#AutoIt3Wrapper_UseUPX=n
#AutoIt3Wrapper_UseX64=n
#EndRegion ;**** 参数创建于 ACNWrapper_GUI ****
;仅允许只有一个脚本运行
; 请置于脚本顶部
$g_szVersion = "ZPSoft"
If WinExists($g_szVersion) Then Exit ; 此脚本已经运行了
AutoItWinSetTitle($g_szVersion)
; 下面是脚本的其它代码
$i = 0
While 1
        If WinExists("Total Commander", "注册信息") Then ;查找启动窗口
                $text = WinGetText("Total Commander", "注册信息") ;获取启动窗口的文本
                $firsttext = StringLeft($text, 1) ;找到第一个文本
                WinActivate("Total Commander", "注册信息") ;激活启动窗口
                $controlid = "[CLASS:Button; INSTANCE:" & 4 - $firsttext & "]" ;设置要点击的控件ID(控件1、2、3对应文本3、2、1)
                ControlClick("Total Commander", "注册信息", $controlid) ;点击第一个文本对应的按钮,或者按对应的快捷按键也可以实现
        EndIf
        Sleep(1000)
        if $i < 50 Then 
                $i = $i + 1
        EndIf
        If $i = 50 Then 
                $pos = MouseGetPos() ;获取当前鼠标位置到变量pos
                MouseMove($pos[0], $pos[1]+1, 0)
                MouseMove($pos[0], $pos[1], 0)                ;移动鼠标指针到获取的坐标上,速度为0(最快)
                $i = 0
        EndIf 
WEnd

代码说明:
1.这段代码是合并了两个脚本的功能,成为一个程序文件,设置在开机时启动这一个程序就可以了。以后如果还需要其它功能的话,还可以往里面拓展。
2.功能1:每隔1秒钟检测是否存在TC的启动窗口,如果存在,则自动点击提求文本对应的控件按钮。
3.功能2:每隔50秒钟自动移动鼠标,防止进入屏保。
鉴于这个脚本不是单功能模块,使用的人应该不多,所以就不给大家放下载地址了,可以根据我的思路自行拓展。
或者大家有什么需要的功能,咱们一起探讨怎样来实现。

____________________________________________________________________________________________________________________
【2023/02/01更新】
看到有的网友说软件在运行时被自动清理掉了,这是因为代码在编译成exe文件后运行时会释放文件然后执行,这个原理容易被一些杀软误报为木马或病毒类。
解决方法有两个,一是把程序所在路径设置为白名单,如果内网限制不能设置白名单的话,还可以使用第二个方法,即用autoit3.exe+代码编译成.a3x格式,这种方式运行就不会被杀软误报。所需文件可以在官网下载,然后按我源代码编译一下,或直接下载我编译好的文件,链接如下:https://cowtransfer.com/s/2b8934b4b77740 [ 自动移动鼠标防止进入屏保(exe+a3x).zip ]
或访问奶牛快传 cowtransfer.com 输入传输口令 tm7epw
使用方法:
解压缩后会出现三个文件,修改快捷方式里的起始位置为你当前程序所在路径,然后将快捷方式复制到启动文件夹中。双击快捷方式即可正常运行,下次重启计算机后会自动运行。

免费评分

参与人数 5吾爱币 +13 热心值 +5 收起 理由
guan1021 + 3 + 1 热心回复!
精神科王医生 + 1 + 1 感谢 终于不用拿东西压着键盘了。。
su3194 + 1 + 1 感谢,自己做小程序的工作时会抢鼠标,还要关掉,很麻烦,谢谢分享
block92 + 1 + 1 谢谢@Thanks!
风之暇想 + 7 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

推荐
 楼主| zhaopengdoctor 发表于 2022-12-22 21:00 |楼主
dujiu3611 发表于 2022-12-22 20:00
刚想问为什么不让进入屏保还设置屏保?
话说楼上那些都是什么规定?这么奇葩的规定就别设置屏保了呗
好奇 ...

所谓上有政策,下有对策。
政策是:必须要设置5分钟以内的屏保时间,退出屏保时需要再次输入登录密码。并且不定期进行检查通报。
实际中的问题是:比如你去上了个厕所,回来时发现电脑进入屏保了,想继续工作,需要输入登录密码退出屏保。一次两次可以,但是天天如此,你会不会嫌麻烦?
对策是:我不改动任何设置,我电脑里的设置完全符合你的安全要求,屏保时间我甚至可以设置成最短的1分钟,保证你在检查时发现不了任何问题。但是我还要让我的工作变得更轻松一些,于是播放PPT、打开暴风影音等各种防止进入屏保的方法就用上了,当然我作的这个小程序也可以实现这样的功能。
这样解释,你能明白了吧?设置屏保是公司的要求,不让进入屏保是为了轻松的工作。话说正是因为人类的懒惰,才促进了科技的进步。
推荐
Lynn_ 发表于 2022-12-22 12:20
3#
wkjxs2015 发表于 2022-12-22 12:02
4#
8970665 发表于 2022-12-22 12:44
取消不了吗
5#
freedover 发表于 2022-12-22 12:44
Lynn_ 发表于 2022-12-22 12:20
那为什么不取消屏保呢?

内网机不能取消屏保
6#
 楼主| zhaopengdoctor 发表于 2022-12-22 14:22 |楼主
Lynn_ 发表于 2022-12-22 12:20
那为什么不取消屏保呢?

有的公司有硬性规定,比如屏保时间必须小于五分钟,退出屏保时必须再次输入密码登录,密码长度不得小于八位,必须包含大小写字母数字和特殊符号。还会定期检查通报。
7#
snake88 发表于 2022-12-22 15:37
内网机不能取消屏保 有这样规定吗?
8#
ysjd22 发表于 2022-12-22 16:31
不错的小工具
9#
alongzhenggang 发表于 2022-12-22 16:55
  不会写代码  哈
10#
fancy456 发表于 2022-12-22 17:21
谢谢楼主分享
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-23 15:42

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表