按键精灵插件帮助
按键精灵插件使用说明

函数说明:1.TransformWindow(窗口句柄)功能:转换窗口,对要取后台图色数据的窗口使用该函数后才能取后台图色数据。
如果是DX图形绘图的窗口,DX绘图区域必须有部分移到屏幕外,否则无法使用。
转换窗口后,有些窗口(特别是大多数游戏的)要等待一会儿才能用其它函数可靠地取到后台图色数据,等待的时间要大于画面两次刷新的时间间隔。
转换后到取消转换前,可以无限次使用取到后台图色数据的命令,即通常只需要转换一次。
参数:1)窗口句柄:整型数。
2.UnTransformWindow(窗口句柄)功能:取消窗口转换,DX图形绘图的窗口,用过TransformWindow后,必须用UnTransformWindow取消窗口转换才能让DX绘图完全移到屏幕中,否则后很严重(不会损坏电脑的),自己试下就知道了。
参数:1)窗口句柄:整型数。
3.GetPixelColor(窗口句柄,横坐标,纵坐标)[颜色值]功能:获得指定点的颜色参数:1)窗口句柄:整型数。
2)横坐标:整型数,窗口客户区坐标。
3)纵坐标:整型数,窗口客户区坐标。
返回值:颜色值:整型数。
例子:Plugin hwnd=Window.Foreground()Plugin Window.Move(hwnd,-30,10)Plugin BGCP2_02.TransformWindow(hwnd)Delay 200Plugin color=BGCP2_02.GetPixelColor(hwnd,0,0)MsgBox CStr(Hex(color)),4096,"颜色"Plugin BGCP2_02.UnTransformWindow(hwnd)Plugin Window.Move(hwnd,10,10)4.CmpColor(窗口句柄,横坐标,纵坐标,颜色,颜色最大偏差)[是否满足条件]功能:判断指定点的颜色,后台的IfColor参数:1)窗口句柄:整型数。
按键精灵教程按键精灵的教程,帮助您学习如何使用该工具1.下载安装首先

按键精灵教程按键精灵的教程,帮助您学习如何使用该工具1.
下载安装首先
以下是按键精灵的教程,帮助您学习如何使用该工具:
1. 下载安装:首先需要从官方网站或其他可靠的网站下载按键精灵软件,然后按照提示和安装向导安装到电脑上。
2. 基本界面和功能:学习按键精灵的基本界面和功能,从而快速了解该工具的操作和使用方式。
3. 录制宏:按键精灵最大的特点就是宏录制功能,可以将一系列的命令和操作录制下来,然后再次使用时,只需补充输入需要更改的变量即可。
学习如何录制一个宏后,让其在某些条件下自动触发。
4. 宏脚本编辑:对于一些复杂的宏脚本,我们可以通过编辑器对其进行编辑,让其更加智能。
5. 学习按键精灵脚本语言:按键精灵脚本语言也是一个重要的学习点,在掌握其基本语法规则和常用命令的基础上,能够让使用更加精准。
6. 常用功能:按键精灵还有很多其他的功能,如窗口控制、文件操作、日期时间等。
学习这些功能,能够使按键精灵更加多样化和可玩性。
7. 练习和应用:通过对按键精灵的学习和练习,掌握并运用其各种功能和技巧,能够提升工作效率和质量,让整个工作流程变得更加智能和便捷。
通过按键精灵的学习和应用,能够大大提高工作效率和质量,以及简化工作流程,达到省时、省力的效果。
按键精灵大漠插件excel操作语句

按键精灵大漠插件excel操作语句一、打开Excel文件1. 打开指定路径下的Excel文件:excel.Open("D:\test.xls");2. 打开当前路径下的Excel文件:excel.Open("test.xls");3. 打开最后一个打开的Excel文件:excel.OpenLast()。
二、读取单元格数据4. 读取指定单元格的文本内容:excel.ReadCellText("Sheet1", "A1");5. 读取指定单元格的数值内容:excel.ReadCellNumber("Sheet1", "B2");6. 读取指定单元格的公式内容:excel.ReadCellFormula("Sheet1", "C3");7. 读取指定单元格的日期内容:excel.ReadCellDate("Sheet1", "D4")。
三、写入单元格数据8. 在指定单元格中写入文本内容:excel.WriteCellText("Sheet1", "A1", "Hello World");9. 在指定单元格中写入数值内容:excel.WriteCellNumber("Sheet1", "B2", 123.45);10. 在指定单元格中写入公式内容:excel.WriteCellFormula("Sheet1", "C3", "=SUM(A1:B2)");11. 在指定单元格中写入日期内容:excel.WriteCellDate("Sheet1", "D4", "2022-01-01")。
按键精灵插件使用说明

函数说明:1.TransformWindow(窗口句柄)功能:转换窗口,对要取后台图色数据的窗口使用该函数后才能取后台图色数据。
如果是DX图形绘图的窗口,DX绘图区域必须有部分移到屏幕外,否则无法使用。
转换窗口后,有些窗口(特别是大多数游戏的)要等待一会儿才能用其它函数可靠地取到后台图色数据,等待的时间要大于画面两次刷新的时间间隔。
转换后到取消转换前,可以无限次使用取到后台图色数据的命令,即通常只需要转换一次。
参数:1)窗口句柄:整型数。
2.UnTransformWindow(窗口句柄)功能:取消窗口转换,DX图形绘图的窗口,用过TransformWindow后,必须用UnTransformWindow取消窗口转换才能让DX绘图完全移到屏幕中,否则后很严重(不会损坏电脑的),自己试下就知道了。
参数:1)窗口句柄:整型数。
3.GetPixelColor(窗口句柄,横坐标,纵坐标)[颜色值]功能:获得指定点的颜色参数:1)窗口句柄:整型数。
2)横坐标:整型数,窗口客户区坐标。
3)纵坐标:整型数,窗口客户区坐标。
返回值:颜色值:整型数。
例子:Plugin hwnd=Window.Foreground()Plugin Window.Move(hwnd,-30,10)Plugin BGCP2_02.TransformWindow(hwnd)Delay 200Plugin color=BGCP2_02.GetPixelColor(hwnd,0,0)MsgBox CStr(Hex(color)),4096,"颜色"Plugin BGCP2_02.UnTransformWindow(hwnd)Plugin Window.Move(hwnd,10,10)4.CmpColor(窗口句柄,横坐标,纵坐标,颜色,颜色最大偏差)[是否满足条件]功能:判断指定点的颜色,后台的IfColor参数:1)窗口句柄:整型数。
按键精灵命令

6)HtmlExists(网页元素特征串)
功能:在网页中查找对应的网页元素,返回对应的网页元素的个数
参数:网页元素特征串
返回值:对应该特征字符串的网页元素的个数
2.4.扩展命令
1)String RunJS(执行类型,Javascript语句)
功能:直接执行一段Javascript语句;
2)LeftDown(X坐标,Y坐标)
功能:鼠标左键按下
参数:
参数1整数型,X坐标
参数2整数型,Y坐标
返回值:无
例子:Plugin Web.LeftDown(50,100)
3)LeftUp(X坐标,Y坐标)
功能:鼠标左键弹起
参数:
参数1整数型,X坐标
参数2整数型,Y坐标
返回值:无
例子:Plugin Web.LeftUp(50,100)
参数:无
返回值:无
11)ClearCookie()
功能:清除IE所有的Cookie
参数:无
返回值:无
12)GetUrl()
功能:返回当前页面的URL地址
参数:无
返回值:字符串,当前页面的URL地址
2.3.页面控制命令
1)HtmlClick(网页元素特征串)
功能:点击网页中的按钮或链接,或者是其他元素,无ID请指定tag;
参数:
参数1:执行类型,0:无返回值,1有返回值【JS中必须有return语句】
参数2:Javascript语句
返回值:返回特征字符串;
2.5.后台键盘鼠标命令
1)MoveTo(X坐标,Y坐标)
功能:鼠标移动
参数:
参数1整数型,X坐标
参数2整数型,Y坐标
按键精灵自动化办公插件

按键精灵自动化办公插件来源:按键学院【按键精灵】“圣诞快乐~~”在小编的印象里,圣诞节一般都是呵气成霜的日子。
今年不一样哈,圣诞节天气还是十分暖和的。
不知道童鞋们的城市是不是有在下雪,小编已经好久没有看见过雪花了~圣诞感言就到这里。
今天小编要和大家分享的是一款办公插件。
懒人办公插件在之前的院刊中,也分享过懒人办公插件。
想必有不少童鞋都有使用过。
那么,是什么原因让小编忍不住再次要分享这个插件呢?近期,懒人插件作者lxj1985 再次更新了插件,更新之后的插件更加给力,让小编忍不住想要分享给大家。
懒人插件更新内容1、完善了EXCEL表格处理功能。
2、WORD类的处理功能重新编写,使其更适用于使用者。
3、ACCESS类不光可以操作ACCESS,还能对其他类别的数据库进行一定程度的操作。
4、编写了一份详细的的帮助文档,不光是在编程中用的上,在手动办公的过程中也能用的上这份帮助文档。
帮助文档的内容,作者大大写得非常的详细,每个命令的使用都附有例子说明:使用方法【调用懒人插件的方式有两种】方法1:1、将插件dll文件放在按键精灵安装目录下的plugin文件夹中。
2、打开按键精灵即可在按键精灵的插件命令中,找到新增的懒人插件命令,选择命令即可使用。
方法2:如果插件(LazyOffice.dll)放在c:\test目录,使用以下代码对插件进行注册:Set ws = CreateObject("Wscript.Shell")ws.run "regsvr32 c:\test\LazyOffice.dll /s"然后创建对象://主脚本中使用插件命令,在脚本起始位置创建一次对象即可,如果有多开线程或者在控件事件中使用命令,则需在线程中控件事件中再次创建对象。
Set LazyExcel= CreateObject("Lazy.LxjExcel")//使用excel功能要创建的对象Set LazyWord= CreateObject("Lazy.LxjWord")//使用word功能要创建的对象Set LazyAccess= CreateObject("Lazy.LxjAccess")<span style="font-family: Tahoma, 'Microsoft Yahei', Simsun;font-size: 14px; line-height: 1.5;">//使用Access功能要创建的对象</span>注意:帮助文档中的命令说明示例,是以第二种注册插件创建对象的方法。
(完整版)按键精灵默认插件命令大全

(完整版)按键精灵默认插件命令大全目录插件命令面板 - BKgnd后台控制 (6)KeyPress 按键 (6)KeyDown 按下 (7)KeyUp 弹起 (8)LeftClick 左键单击 (9)LeftDoubleClick 左键双击 (10)LeftDown 左键按下 (11)LeftUp 左键弹起 (12)RightClick 右键单击 (13)RightDown 右键按下 (14)RightUp 右键弹起 (15)MiddleClick 中键单击 (16)SendString 发送字符串 (17)MoveTo 鼠标移动 (18)GetPixelColor 得到指定点颜色 (19)FindColor 区域找色 (20)FindColorEx 模糊找色 (21) FindCenterColor 中心找色 (22)插件命令面板 - Color颜色 (23)ColorToRGB 颜色转RGB (23)GetRGB 得到RGB分量合并值 (23) ColorToHSL 颜色转HSL (24)CountColor 区域搜索颜色数量 (25) FindMutiColor 区域多点找色 (26)FindShape 区域多点找形状 (27)插件命令面板 - Console控制台 (27)Open 打开 (28)Close 关闭 (29)ReadLine 读取一行 (29)WriteLine 写入一行 (29)WaitKey 等待按键 (30)插件命令面板 - Encrypt加解密 (30)Md5String 字符串MD5加密 (30)Md5File 文件MD5加密 (31)插件命令面板 - File文件 (31)CloseFile 关闭文件 (31)CopyFile 复制文件 (31)CreateFolder 创建文件夹 (32) DeleteFile 删除文件 (32)DeleteFolder 删除文件夹 (33)ExistFile 判断文件(旧) (33) GetFileLength 得到文件长度 (33) IsFileExit 判断文件 (34)MoveFile 移动文件 (35)OpenFile 打开文件 (35)ReadFile 读取文件 (36)ReadFileEx 读取文件 (36)ReadINI 读取键值 (37)ReadLine 读取一行 (37)ReNameFile 重命名文件 (38)SeekFile 设置文件的当前读写位置 (38) SelectDirectory 弹出选择文件夹对话框 (39) SelectFile 弹出选择文件对话框 (39) SetAttrib 设置文件属性 (40)SetDate 设置文件日期时间 (41) WriteFile 写入文件 (41)WriteFileEx 写入文件 (41)WriteINI 写入键值 (42)WriteLine 写入一行 (42)插件命令面板 - Media多媒体 (43) Beep 蜂鸣器 (43)Play 播放 (44)Stop 停止 (44)Vol 音量 (45)Memory内存/进程 (45)Find16Bit 搜索16位数值 (45)Find32Bit 搜索32位数值 (46)Find8Bit 搜索8位数值 (47) FindBinary 搜索二进制数据 (47) FindBinary 搜索二进制数据 (48) FindString 搜索字符串 (49) GetProcessLive 获得进程优先级 (50) Read16Bit 读取16位数值 (51) Read16Bit 读取16位数值 (52) Read32Bit 读取32位数值 (52) Read8Bit 读取8位数值 (53) ReadBinary 读取二进制数据 (54) ReadDouble 读取64位浮点数值 (55) ReadSingle 读取32位浮点数值 (55) ReadString 读取字符串 (56) SetProcessLive 设置进程优先级 (57) TerminateProc 终止进程 (57)插件命令面板 - Net网络 (58) DialUp 拨号 (58)HangUp 断开 (59)IsOnline 判断在线 (59)插件命令面板 - Office办公文档 (60)ReadXls 读出Excel单元格 (60)WriteXls 写入Excel单元格 (60)插件命令面板 - Pic图像 (61)PrintScreen 屏幕截图 (61)插件命令面板 - Sys系统 (61)ExitOS 系统关机 (61)GetCLB 获得剪切板内容 (62)GetDir 获得路径 (62)GetHDDSN 得到硬盘序列号 (63)GetOSType 获得系统类型 (63)GetScDep 获得屏幕颜色质量 (64)GetScRX 获得屏幕宽度 (65)GetScRY 获得屏幕高度 (65)GetTime 取得毫秒数 (66)SetCLB 设置剪切板内容 (66)SetSc 设置屏幕分辨率 (67)插件命令面板 - Web网页 (67)ClearCookie 删除Cookie (67)ClearHistory 清除历史记录 (68)ClearTemp 删除临时文件 (68)插件命令面板 - Window窗口 (68)Active 激活 (69)Close 关闭 (69)Find 查找窗口 (70)FindEx 查找子窗口 (70)Foreground 当前窗口 (71)GetClass 得到窗口类名 (72)GetClientRect 窗口客户区大小 (72) GetExePath 得到窗口程序路径 (73) GetKeyFocusWnd 得到可以发送按键消息的窗口 (74)GetText 得到窗口标题 (74) GetWindowRect 窗口边框大小 (75) Hide 隐藏 (76)IsWindow 判断窗口 (77)Max 最大化 (77)Min 最小化 (78)MousePoint 鼠标指向窗口 (78) Move 移动 (79)Restore 还原 (79)Search 遍历符合窗口 (80) SendKeyDown 按下 (81) SendKeyPress 按键 (81) SendKeyUp 弹起 (82) SendString 发送字符串 (82) Show 显示 (83)Size 改变大小 (83)Top 窗口置前 (84)插件命令面板 - Msg信息提示 (84) HideScrTXT 屏幕刷新 (84) ShowScrTXT 屏幕输出 (85)插件命令面板 - BKgnd后台控制命令名称:KeyPress 按键命令功能:向后台窗口句柄发送一个键盘按键命令参数:参数1 整数型,窗口句柄参数2 整数型,键盘扫描码返回值:无脚本例子:按键精灵8 及以上语法复制代码1.Call RunApp("notepad.exe")2.Delay 10003.//==================================== ========================================= ====4.//找记事本输入区句柄5.Hwnd=Plugin.Window.Find("notepad",0)6.Hwnd=Plugin.Window.FindEx(Hwnd, 0, "Edit", 0)7.//注意:会发送2次按键8.//下面这句用于向后台窗口句柄(变量:Hwnd)发送一个键盘(扫描码:65)按键9.Call Plugin.Bkgnd.KeyPress(Hwnd, 65)10.Msgbox "在后台窗口输入A键"脚本例子:按键精灵7 及以下语复制代码1.VBSCall RunApp("notepad.exe")2.Delay 10003.//==================================== ========================================= ====4.//找记事本输入区句柄5.Plugin Hwnd=Window.Find("notepad",0)6.Plugin Hwnd=Window.FindEx(Hwnd, 0, "Edit", 0)7.//注意:会发送2次按键8.//下面这句用于向后台窗口句柄(变量:Hwnd)发送一个键盘(扫描码:65)按键9.Plugin Bkgnd.KeyPress(Hwnd, 65)法10.Msgbox "在后台窗口输入A键"命令名称:KeyDown 按下命令功能:向后台窗口句柄发送一个键盘按下命令参数:参数1 整数型,窗口句柄参数2 整数型,键盘扫描码返回值:无脚本例子:按键精灵8 及以上语法复制代码1.//下面这句用于向后台窗口句柄(变量:Hwnd)发送一个键盘(扫描码:66)按下2.Call Plugin.Bkgnd.KeyDown(Hwnd, 66)3.Msgbox "在后台窗口输入B键"脚本例子:按键精灵7 及以下语法复制代码1.//下面这句用于向后台窗口句柄(变量:Hwnd)发送一个键盘(扫描码:66)按下2.Plugin Bkgnd.KeyDown(Hwnd, 66)3.Msgbox "在后台窗口输入B键"令名称:KeyUp 弹起命令功能:向后台窗口句柄发送一个键盘弹起命令参数:参数1 整数型,窗口句柄参数2 整数型,键盘扫描码返回值:无脚本例子:按键精灵8 及以上语法复制代码1.//下面这句用于向后台窗口句柄(变量:Hwnd)发送一个键盘(扫描码:65)弹起2.Call Plugin.Bkgnd.KeyUp(Hwnd, 65)3.Msgbox "在后台窗口弹起B键"按键精灵7 及以下语法复制代码1.//下面这句用于向后台窗口句柄(变量:Hwnd)发送一个键盘(扫描码:65)弹起2.Plugin Bkgnd.KeyUp(Hwnd, 65)3.Msgbox "在后台窗口弹起B键"令名称:LeftClick 左键单击命令功能:向后台窗口句柄送一个鼠标左键单击命令参数:参数1 整数型,窗口句柄参数2 整数型,窗口X坐标参数3 整数型,窗口Y坐标返回值:无脚本例子:按键精灵8 及以上语法复制代码1.//下面这句用于向后台窗口句柄(变量:Hwnd)的客户区域(坐标:5, 5)处发送一个鼠标左键单击2.Call Plugin.Bkgnd.LeftClick(Hwnd, 5, 5)3.Msgbox "鼠标在后台窗口(坐标:5, 5)处的单击"按键精灵7 及以下语法复制代码1.//下面这句用于向后台窗口句柄(变量:Hwnd)的客户区域(坐标:5, 5)处发送一个鼠标左键单击2.Plugin Bkgnd.LeftClick(Hwnd, 5, 5)3.Msgbox "鼠标在后台窗口(坐标:5, 5)处的单击"令名称:LeftDoubleClick 左键双击命令功能:向后台窗口句柄发送一个鼠标左键双击命令参数:参数1 整数型,窗口句柄参数2 整数型,窗口X坐标参数3 整数型,窗口Y坐标返回值:无脚本例子:按键精灵8 及以上语法复制代码1.//下面这句用于向后台窗口句柄(变量:Hwnd)的客户区域(坐标:10, 10)处发送一个鼠标左键双击2.Call Plugin.Bkgnd.LeftDoubleClick(Hwnd, 10, 10)3.Msgbox "鼠标在后台窗口(坐标:10, 10)处的双击"脚本例子:按键精灵7 及以下语法复制代码1.//下面这句用于向后台窗口句柄(变量:Hwnd)的客户区域(坐标:10, 10)处发送一个鼠标左键双击2.Plugin Bkgnd.LeftDoubleClick(Hwnd, 10, 10)3.Msgbox "鼠标在后台窗口(坐标:10, 10)处的双击"令名称:LeftDown 左键按下命令功能:向后台窗口句柄发送一个鼠标左键按下命令参数:参数1 整数型,窗口句柄参数2 整数型,窗口X坐标参数3 整数型,窗口Y坐标返回值:无脚本例子:按键精灵8 及以上语法复制代码1.//下面这句用于向后台窗口句柄(变量:Hwnd)的客户区域(坐标:10, 10)处发送一个鼠标左键按下2.Call Plugin.Bkgnd.LeftDown(Hwnd, 10, 10)脚本例子:按键精灵7 及以下语法复制代码1.//下面这句用于向后台窗口句柄(变量:Hwnd)的客户区域(坐标:10, 10)处发送一个鼠标左键按下2.Plugin Bkgnd.LeftDown(Hwnd, 10, 10)令名称:LeftUp 左键弹起命令功能:向后台窗口句柄发送一个鼠标左键弹起命令参数:参数1 整数型,窗口句柄参数2 整数型,窗口X坐标参数3 整数型,窗口Y坐标返回值:无脚本例子:按键精灵8 及以上语法复制代码1.//下面这句用于向后台窗口句柄(变量:Hwnd)的客户区域(坐标:10, 10)处发送一个鼠标左键弹起2.Call Plugin.Bkgnd.LeftUp(Hwnd, 10, 10)脚本例子:按键精灵7 及以下语法复制代码1.//下面这句用于向后台窗口句柄(变量:Hwnd)的客户区域(坐标:10, 10)处发送一个鼠标左键弹起2.Plugin Bkgnd.LeftUp(Hwnd, 10, 10)令名称:RightClick 右键单击命令功能:向后台窗口句柄发送一个鼠标右键单击命令参数:参数1 整数型,窗口句柄参数2 整数型,窗口X坐标参数3 整数型,窗口Y坐标返回值:无脚本例子:按键精灵8 及以上语法复制代码1.//下面这句用于向后台窗口句柄(变量:Hwnd)的客户区域(坐标:0, 0)处发送一个鼠标右键单击2.Call Plugin.Bkgnd.RightClick(Hwnd, 0, 0)3.Msgbox "鼠标在后台窗口(坐标:0, 0)处的右击"脚本例子:按键精灵7 及以下语法复制代码1.//下面这句用于向后台窗口句柄(变量:Hwnd)的客户区域(坐标:0, 0)处发送一个鼠标右键单击2.Plugin Bkgnd.RightClick(Hwnd, 0, 0)3.Msgbox "鼠标在后台窗口(坐标:0, 0)处的右击"令名称:RightDown 右键按下命令功能:向后台窗口句柄发送一个鼠标右键按下命令参数:参数1 整数型,窗口句柄参数2 整数型,窗口X坐标参数3 整数型,窗口Y坐标返回值:无脚本例子:按键精灵8 及以上语法复制代码1.//下面这句用于向后台窗口句柄(变量:Hwnd)的客户区域(坐标:10, 10)处发送一个鼠标右键按下2.Call Plugin.Bkgnd.RightDown(Hwnd, 10, 10)脚本例子:按键精灵7 及以下语法复制代码1.//下面这句用于向后台窗口句柄(变量:Hwnd)的客户区域(坐标:10, 10)处发送一个鼠标右键按下2.Plugin Bkgnd.RightDown(Hwnd, 10, 10)名称:RightUp 右键弹起命令功能:向后台窗口句柄发送一个鼠标右键弹起命令参数:参数1 整数型,窗口句柄参数2 整数型,窗口X坐标参数3 整数型,窗口Y坐标返回值:无脚本例子:按键精灵8 及以上语法复制代码1.//下面这句用于向后台窗口句柄(变量:Hwnd)的客户区域(坐标:10, 10)处发送一个鼠标右键弹起2.Call Plugin.Bkgnd.RightUp(Hwnd, 10, 10)脚本例子:按键精灵7 及以下语法复制代码1.//下面这句用于向后台窗口句柄(变量:Hwnd)的客户区域(坐标:10, 10)处发送一个鼠标右键弹起2.Plugin Bkgnd.RightUp(Hwnd, 10, 10)令名MiddleClick 中键单击命令功能:向后台窗口句柄发送一个鼠标中键单击命令参数:参数1 整数型,窗口句柄参数2 整数型,窗口X坐标参数3 整数型,窗口Y坐标返回值:无脚本例子:按键精灵8 及以上语法复制代码1.//下面这句用于向后台窗口句柄(变量:Hwnd)的客户区域(坐标:10, 10)处发送一个鼠标中键单击2.Call Plugin.Bkgnd.MiddleClick(Hwnd, 10, 10)脚本例子:按键精灵7 及以下语法复制代码1.//下面这句用于向后台窗口句柄(变量:Hwnd)的客户区域(坐标:10, 10)处发送一个鼠标中键单击2.Plugin Bkgnd.MiddleClick(Hwnd, 10, 10)令名称:SendString 发送字符串令功能:向后台窗口句柄发送一个文本消息命令参数:参数1 整数型,窗口句柄参数2 字符串型,文本内容返回值:无脚本例子:按键精灵8 及以上语法复制代码1.Call RunApp("notepad.exe")2.Delay 10003.//==================================== ========================================= ====4.//找记事本输入区句柄5.Hwnd=Plugin.Window.Find("notepad",0)6.Hwnd=Plugin.Window.FindEx(Hwnd, 0, "Edit", 0)7.//下面这句用于向后台窗口句柄(变量:Hwnd)发送一个文本消息(内容:"内容")到客户区8.Call Plugin.Bkgnd.SendString(Hwnd, "内容")9.TracePrint "发送一个文本消息(内容)"脚本例子:按键精灵7 及以下语法复制代码1.VBSCall RunApp("notepad.exe")2.Delay 10003.//==================================== ========================================= ====4.//找记事本输入区句柄5.Plugin Hwnd=Window.Find("notepad",0)6.Plugin Hwnd=Window.FindEx(Hwnd, 0, "Edit", 0)7.//下面这句用于向后台窗口句柄(变量:Hwnd)发送一个文本消息(内容:"内容")到客户区8.Plugin Bkgnd.SendString(Hwnd, "内容")9.TracePrint "发送一个文本消息(内容)"令名称:MoveTo 鼠标移动命令功能:向后台窗口句柄发送一个鼠标移动到坐标处命令参数:参数1 整数型,窗口句柄参数2 整数型,窗口X坐标参数3 整数型,窗口Y坐标返回值:无脚本例子:按键精灵8 及以上语法复制代码1.//下面这句用于向后台窗口句柄(变量:Hwnd)发送一个鼠标移动到客户区域(坐标:10, 10)处2.Call Plugin.Bkgnd.MoveTo(Hwnd, 10, 10)脚本例子:按键精灵7 及以下语法复制代码1.//下面这句用于向后台窗口句柄(变量:Hwnd)发送一个鼠标移动到客户区域(坐标:10, 10)处2.Plugin Bkgnd.MoveTo(Hwnd, 10, 10)令名称:GetPixelColor 得到指定点颜色命令功能:得到指定点颜色(不支持win2000以下系统) 命令参数:参数1 整数型,窗口句柄参数2 整数型,窗口X坐标参数3 整数型,窗口Y坐标返回值:字符串型,16进制颜色值脚本例子:按键精灵8 及以上语法复制代码1.//下面这句取窗口句柄(变量:Hwnd)窗口的客户区(坐标:5, 5)处的颜色2.Color = Plugin.Bkgnd.GetPixelColor(Hwnd, 5, 5)3.Msgbox "后台窗口(坐标:5, 5)处的颜色=" & Color脚本例子:按键精灵7 及以下语法复制代码1.//下面这句取窗口句柄(变量:Hwnd)窗口的客户区(坐标:5, 5)处的颜色2.Plugin Color = Bkgnd.GetPixelColor(Hwnd, 5, 5)3.Msgbox "后台窗口(坐标:5, 5)处的颜色=" & Color。
易语言插件按键精灵调用方法

易语⾔插件按键精灵调⽤⽅法给按键精灵写插件的⽅法有很多,例如vc,vb,乃⾄delphi。
但是,使⽤这些程序语⾔给按键精灵写插件,对编写者的要求⽐较⾼。
易语⾔呢,编程门槛⽐较低,也有很多开源不开源的模块,但是在8.2版本之前,按键精灵是不⽀持易语⾔编写插件的。
当然,现在就没有这个问题了。
今天我就教⼤家怎么⽤易语⾔给按键精灵写⼀个简单的插件。
1、⾄于安装按键精灵和易语⾔,相信⼤家都会的,这⾥主要讲怎么写插件,安装步骤就暂时略过。
⾸先找到按键精灵的安装⽬录,找到source⽂件夹打开2、找到 QMPlugin插件制作模版(易语⾔).zip 压缩⽂件解压,这个⽂件解压后包含有:1、Common.ec [按键精灵⾃⼰的接⼝模块];2、QMPlugin.e [易语⾔插件模板源码];3、易语⾔插件说明.jpg [源代码图解说明];虽然有这个说明,但是如果不是对易语⾔和按键精灵⾮常熟悉,是不能很明确的明⽩图作者的意图,这也是本经验的意义所在。
3、直接打开代码以后可以看见,Common.ec 已经⾃动引⽤到程序,还有就是已经建⽴好的三个程序集:1、插件命令信息集 [主要⽤于填写插件的描述信息和插件的版本信息];2、插件初始化接⼝集[公开给按键精灵调⽤的接⼝,主要调⽤的是模块的⼦程序,改动较少];3、插件命令程序集[主要⽤于插件功能命令,我们新写插件命令就是在这⾥了];4、点击插件命令程序集,切换到该程序集后,在最后⾯Ctrl+N建⽴⼦程序,⼦程序名字⽤英⽂,包含两个参数和⼀个返回值,参数和返回值的类型都是整数型。
这是⼀定要注意的,除了名字不⼀样,其他⼀定要保证没有改动,否则按键精灵不能正确识别调⽤插件。
直接上代码图。
5、点击插件命令信息集,在这⾥⾯添加我们新写的插件命令。
使⽤“添加插件信息”命令。
参数1:我们的插件命令名字;参数2:我们的插件调⽤格式,按键的编辑器会根据这个格式⾃动替换‘$x'为参数给插件调⽤;参数3:我们的插件命令⼦程序指针,格式为'&命令名字‘;参数4:我们插件命令的参数个数;6、好了,编写⼯作就完成了,将代码编译,编译⽅式如图。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.什么是按键精灵的插件按键精灵的插件是由按键精灵官方或用户自己提供的一种功能扩展。
由于按键精灵本身只提供脚本制作过程中最常用的功能,而不可能面面俱到。
所以,如果您稍懂一点Visual C++编写程序的知识,就可以通过自己写按键精灵插件,实现比较特殊、高级的功能,如文件读写、注册表访问,等等。
如果您愿意,还可以把自己写的插件提交给我们,我们可以在按键精灵的最新版中捆绑您编写的插件,和大家共同分享您的智慧!按键精灵的插件是通过动态链接库(DLL)的形式提供的。
这些动态链接库必须满足一定的规范,并且放在按键精灵所在路径的plugin文件夹下。
在按键精灵启动的时候,会自动加载plugin文件夹下的每个插件。
每个插件可以包含多个“命令”,每个命令则可以看作是一个独立的函数或者子程序。
比如我们提供的文件相关操作插件File.dll,就提供了ExistFile(判断文件是否存在)、CopyFile(复制一个文件)、DeleteFile(删除一个文件)等多个命令。
目前按键精灵的插件只能使用Visual C++编写。
您不需要懂得很高深的Visual C++编程技巧,也不需要知道插件的技术细节。
因为我们已经提供了一个“模板”插件,您只需要在这个模板上按照下文所述的步骤进行一点点修改,一个属于您自己的插件就完成了。
我们推荐您使用Visual C++ 6.0,也可以用Visual C++.NET。
值得说明的是,由于技术原因,按键精灵的插件目前还不能用Visual Basic、Delphi、JBuilder等常见的开发工具编写。
但是有聪明的用户使用VBScript脚本和ActiveX DLL的形式,同样实现了按键精灵的功能扩展,典型的例子如Ringfo大虾制作的QMBoost等等。
严格说来,这种功能扩展不能称为按键精灵的插件,但是我们同样欢迎这种类型的功能扩展。
2. 如何制作一个插件2.1.准备动手为按键精灵写一个插件其实非常简单,只需要您有一点Visual C++编程的知识就够了。
如果您懂Visual C++编程,就请跟我一步一步的来完成一个简单的插件。
首先得计划一下,我们的插件完成什么功能,再考虑一下这个插件都需要具有哪些命令。
这里假设我们的插件是用于字符串操作的,名字就叫String.dll,这个插件目前暂时只有一个命令,名字叫StrLen,是用于得到字符串长度的。
也就是说,用户通过使用我们提供的StrLen 命令,传入一个字符串,我们给他返回这个字符串的长度。
具体的说,用户可能将来会在按键精灵中这样调用我们的插件命令:Dim length as integerPlugin length=String.StrLen(“Hello, world”)如果您熟悉按键精灵,那么对第一句话不会陌生,它的意思是定义一个叫length的整数变量。
第二句的意思,我们来解析一下:小结一下,我们的插件名字叫String.dll,里面提供一个命令,名叫StrLen,这个命令接受一个字符串作为参数,返回一个整数值,含义是得到字符串的长度。
OK,下面我们把按键精灵提供的插件模板(在XXX路径下)复制一份,然后在它的基础上进行修改。
2.2.编写插件的简介、插件命令和插件命令的简介按键精灵提供的插件模板是一个Visual C++ project,我们用Visual C++ 6.0打开这个project。
这个project里面包含了好几个文件,实际上我们只需要修改QMPlugin.cpp这一个文件,其他文件您都可以不用去管。
用Visual C++打开QMPlugin.cpp文件,在文件开头找到这样一行:extern char *g_lpszPluginDescription = "这是一个插件的模板";这个字符串定义了插件的简介,我们把它改成:extern char *g_lpszPluginDescription = "这是我的字符串处理插件";再找到QMPlugin.cpp文件最后,有类似于这样的内容:QMPLUGIN_CMD_INFO g_CommandTable[] ={"Test1","测试1",Test1Handler,"Test2","测试2",Test2Handler,};懂一点C语言的朋友应该知道这是一个结构数组,如果您不懂也没有关系,请注意花括号中间的两行,每一行代表了这个插件的一个命令。
插件模板这里已经写了两个命令,其实仅仅是作为示范,没有用处,您可以把这两个命令都删掉,然后用自己定义的命令代替。
花括号中间的内容可以看作是一个表格,我们称为“插件命令表”。
每一行从左到右由三个部分组成,第一部分是这个插件命令的名称,第二部分是这个插件命令的简要解释,第三部分我们暂时不管,后面再讲。
我们的字符串处理插件目前只有一个命令 StrLen,所以把代码改成:QMPLUGIN_CMD_INFO g_CommandTable[] ={"StrLen","得到字符串的长度",Test1Handler,};第三部分我们还没有讲,所以暂时先填写一个Test1Handler,一会再回头改。
2.3.最基本的插件命令处理函数当按键精灵用户调用我们的StrLen命令的时候,我们需要写一段代码来处理这个命令,并且给按键精灵返回字符串的长度。
具体的说,对于每个命令,我们都需要写一个对应的C 语言函数来处理用户对这个命令的调用。
不管这个命令有几个参数,返回值是什么类型,我们的C语言函数总是这个样子:int XXXX(char *lpszParamList, char *lpszRetVal)上面的XXXX是这个函数的名字,随便起什么名字都可以,只要别重名就好。
注意,除了函数的名字可以改,其他的地方最好都不要改。
比如我们的StrLen命令,假如它对应的函数叫MyStrLenHandler,那么请在QMPlugin.cpp中增加这样一个函数:int MyStrLenHandler(char *lpszParamList, char *lpszRetVal){return 0;}我们来看这个函数,它有两个参数lpszParamList和lpszRetVal,返回值是整数。
lpszParamList中存放了按键精灵传过来的字符串(比如前面例子中的“hello, world”这个字符串就会保存在这里),而返回值就是我们要告诉按键精灵的,这个字符串的长度。
lpszRetVal暂时还用不上,先不要动它。
了解C语言的朋友都知道在C语言中要得到一个字符串的长度是很容易的,如下:int MyStrLenHandler(char *lpszParamList, char *lpszRetVal){return strlen(lpszParamList);}插件处理函数就写完了,很简单吧?现在,我们还需要在StrLen这个插件命令和MyStrLenHandler这个命令处理函数之间建立起关联关系。
上一节中提到,我们是这样在插件命令表中定义StrLen命令的:"StrLen","得到字符串的长度",Test1Handler,前两部分分别代表插件命令的名称和插件命令的简要解释,第三部分,就是这个插件命令的处理函数。
也就是说,我们需要改成:"StrLen","得到字符串的长度", MyStrLenHandler,现在,StrLen命令就和MyStrLenHandler函数关联起来了。
到此为止,我们已经编写了一个最简单的插件。
不妨用Visual C++编译这个project,把生成的DLL文件改名为String.dll,然后放在按键精灵的plugin目录下。
启动按键精灵,运行这样一个简单的按键精灵脚本:Dim length as integerPlugin length=String.StrLen(“Hello, world”)VBSCall MessageBox(CStr(length))这个脚本会弹出一个对话框,对话框里面的数字就是“Hello, world”这个字符串的长度。
2.4.返回值为字符串的插件命令下面我们为String这个插件再增加一个命令,名字叫StrRev,这个命令接受一个字符串作为参数,返回值是把参数中字符串的内容倒置,比如把”hello”变成”olleh”。
和StrLen不同的是,它的返回值不是整数,而是一个字符串。
不管怎么样,我们都需要为这个命令建立一个处理函数,假如这个处理函数名字叫MyStrRevHandler,这个函数的原型必须是:int MyStrRevHandler(char *lpszParamList, char *lpszRetVal)可是,我们希望在这个函数里面返回一个字符串,应该如何处理呢?按键精灵规定:如果lpszRetVal的内容被命令处理函数修改过,则忽略命令处理函数返回的整数值,认为这个命令处理函数返回的是lpszRetVal这个字符串。
也就是说,如果我们把按键精灵传来的字符串倒置后,只要复制到lpszRetVal指向的字符串中,导致lpszRetVal发生了修改,则这个命令的返回值就被认为是lpszRetVal。
那么,我们的MyStrRevHandler处理函数应该这样编写:int MyStrRevHandler(char *lpszParamList, char *lpszRetVal){strcpy(lpszRetVal, _strrev(lpszParamList));return 0;}我们首先调用C语言标准库函数_strrev把字符串lpszParamList(也就是按键精灵传来的字符串)倒置,然后调用C语言标准库函数strcpy把倒置后的结果复制到lpszRetVal 中。
最后,StrRev这个命令同样需要记录在插件命令表中,现在我们的插件命令表变成:QMPLUGIN_CMD_INFO g_CommandTable[] ={"StrLen","得到字符串的长度", MyStrLenHandler,"StrRev","倒置一个字符串", MyStrRevHandler ,};编译一下,现在我们的String插件就包含两条命令了!2.5.包含不止一个参数的插件命令下面我们为String这个插件再增加一个命令,名字叫StrCmp,这个命令接受两个字符串,并比较这两个字符串的内容,如果相同就返回0,否则返回非0。