主要实现了C++里的GetAsynckeyState(VK_NAME)方法来监控鼠标的操作状态,然后利用GetCursorPos(LPPOINT lp)来获取鼠标位置,最后读取录制的操作数据,进行操作重放;
下载链接:https://download.youkuaiyun.com/download/qq_42799236/12562298
使用说明
工具的使用比较简单粗暴,第一次运行请先打开如图(鼠标脚本1.0.exe)文件,会出现下图模式选择界面代表运行成功,如果报错请先运行资源里的(环境配置.bat)文件;
第二步先进行鼠标操作的录制,输入1按回车确认,即选择模式1.录制脚本:
出现上图则意味着工具已经开始记录你的鼠标操作并存储,目前暂不支持模拟鼠标拖拽和鼠标右键活动,其它单击或双击操作将被记录:
如图,当你确定自己鼠标操作结束后,按键盘左上角的ESC键结束录制,工具将统计你的操作数和用时;
录制好了你所需要的操作,下面关闭工具重新打开,并输入2按回车选择执行刚刚录制的脚本;
下一步便是要确认一下你想要执行多少次刚刚的操作,以及每次执行完休息多久,单位为秒,按回车确认:
注意事项:
①重新录制脚本将覆盖先前录制的脚本,如果要进行备份,请将bin目录里的data.dat文件备份在其它文件夹里,重新录制脚本将生成新的data.dat文件,如果要执行任意备份脚本,只要把它的data.dat文件放回bin目录里;
②工具里的文件夹或者文件都是必要的,大小并不大,如果删除将导致工具运行失败;
C++源码
#include<iostream>
#include<windows.h>
#include<fstream>
#include<time.h>
#define KEY_DOWN(VK_NONAME) ((GetAsyncKeyState(VK_NONAME) & 0x8000) ? 1:0)
using namespace std;
typedef struct act{
//定义存储鼠标操作信息的结构体对象;
long x;
long y;
long t;
}action;
action aa [500]; //定义操作数组;
int count = 0; //操作计数;
int k=1; //循环计数
float cost = 0.0;//脚本总耗时
int delay=3
; //接收脚本延时
int num = 0; //接收脚本次数
void store(){
//定义存储操作的方法;
POINT ptB = {
0,0}; //获取鼠标坐标;
LPPOINT xy = &ptB;
GetCursorPos(xy);
long x = xy->x;
long y = xy->y;
SYSTEMTIME sys;//获取当日经过毫秒数;
GetLocalTime(&sys);
long h = sys.wHour*60*60*1000;
long m = sys.wMinute*60*1000;
long s = sys.wSecond*1000;
long ms = sys.wMilliseconds;
long t =0