admin管理员组

文章数量:1533920

2024年1月13日发(作者:)

欧阳数创编

按键精灵学习教程

一、

时间:2021.03.02

创作:欧阳数

一、 键盘命令(2~5页)

二、鼠标命令(5~13页)

三、控制命令(13~22页)

四、颜色/图像命令(22~28页)

五、其他命令(28~35页)

五、网游脚本实例(35~最后)欧阳数创编

欧阳数创编

一、

键盘命令

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

GetLastKey 检测上次按键

检测上次按键

参数1 整数型,可选:变量名

复制代码

1.

//脚本运行到这一行不会暂停,调用的时候立即返回,得到调用之前最后一次按下的按键码保存在变量Key里。

2.

Key=GetLastKey()

3.

If Key = 13 Then

4.

Msgbox "你上次按下了回车键"

5.

End If

//脚本运行到这一行不会暂停,调用的时候立即返回,得到调用之前最后一次按下的按键码保存在变量Key里。Key=GetLastKey() If Key

= 13 Then Msgbox "你上次按下了回车键"End If

脚本例子:

(7.x语法)

复制代码

1.

//脚本运行到这一行不会暂停,调用的时候立即返回,得到调用之前最后一次按下的按键码保存在变量Key里。

2.

GetLastKey Key

3.

If Key = 13

4.

Msgbox "你上次按下了回车键"

5.

EndIf

//脚本运行到这一行不会暂停,调用的时候立即返回,得到调用之前最后一次按下的按键码保存在变量Key里。GetLastKey KeyIf Key =

13 Msgbox "你上次按下了回车键"EndIf

命令名称:

命令功能:

命令参数:

KeyDown 按住

键盘按住

参数1 整数型,键盘虚拟码(8.X支持 按键字符)

参数2 整数型,次数

返 回 值:

脚本例子:

(8.x语法)

复制代码

1.

//KeyDown、KeyDownS、KeyDownH

2.

//KeyDownS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用

3.

//KeyDownH: 硬件模拟方式,仅支持PS(圆口)的键盘 点击查看使用硬件模拟方式的注意事项

欧阳数创编

欧阳数创编

4.

5.

6.

7.

8.

KeyDown 65,1

//65是A键的按键码,上面的语句表示按住A键1次

KeyDown "A",1

//上面的支持按键字符,语句表示按住A键1次

//KeyDown、KeyDownS、KeyDownH//KeyDownS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用//KeyDownH: 硬件模拟方式,仅支持PS(圆口)的键盘 点击查看使用硬件模拟方式的注意事项KeyDown 65,1//65是A键的按键码,上面的语句表示按住A键1次KeyDown "A",1//上面的支持按键字符,语句表示按住A键1次

脚本例子:

(7.x语法)

复制代码

1.

//KeyDown、KeyDownS、KeyDownH

2.

//KeyDownS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用

3.

//KeyDownH: 硬件模拟方式,仅支持PS(圆口)的键盘 点击查看使用硬件模拟方式的注意事项

4.

KeyDown 65,1

5.

//65是A键的按键码,上面的语句表示按住A键1次

KeyPress 按键

键盘按键

参数1 整数型,键盘虚拟码(8.X支持 按键字符)

参数2 整数型,次数

返 回 值:

脚本例子:

(8.x语法)

复制代码

1.

//KeyPress、KeyPressS、KeyPressH

2.

//KeyPressS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用

3.

//KeyPressH: 硬件模拟方式,仅支持PS(圆口)的键盘 点击查看使用硬件模拟方式的注意事项

4.

KeyPress 65,1

5.

//65是A键的按键码,上面的语句表示按A键1次

6.

7.

KeyPress "A",1

8.

//上面的支持按键字符,语句表示按A键1次

//KeyPress、KeyPressS、KeyPressH//KeyPressS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用//KeyPressH: 硬件模拟方式,仅支持PS(圆口)的键盘 点击查看使用硬件模拟方式的注意事项KeyPress 65,1//65是A键的按键命令名称:

命令功能:

命令参数:

欧阳数创编

欧阳数创编

码,上面的语句表示按A键1次KeyPress "A",1//上面的支持按键字符,语句表示按A键1次

脚本例子:

(7.x语法)

复制代码

1.

//KeyPress、KeyPressS、KeyPressH

2.

//KeyPressS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用

3.

//KeyPressH: 硬件模拟方式,仅支持PS(圆口)的键盘 点击查看使用硬件模拟方式的注意事项

4.

KeyPress 65,1

5.

//65是A键的按键码,上面的语句表示按A键1次

//KeyPress、KeyPressS、KeyPressH//KeyPressS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用//KeyPressH: 硬件模拟方式,仅支持PS(圆口)的键盘 点击查看使用硬件模拟方式的注意事项KeyPress 65,1//65是A键的按键码,上面的语句表示按A键1次

命令名称:

命令功能:

命令参数:

KeyUp 弹起

键盘弹起

参数1 整数型,键盘虚拟码(8.X支持 按键字符)

参数2 整数型,次数

返 回 值:

脚本例子:

(8.x语法)

复制代码

1.

//KeyUp、KeyUpS、KeyUpH

2.

//KeyUpS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用

3.

//KeyUpH: 硬件模拟方式,仅支持PS(圆口)的键盘 点击查看使用硬件模拟方式的注意事项

4.

KeyUp 65,1

5.

//65是A键的按键码,上面的语句表示松开A键1次

6.

7.

KeyUp "A",1

8.

//上面的支持按键字符,语句表示松开A键1次

//KeyUp、KeyUpS、KeyUpH//KeyUpS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用//KeyUpH: 硬件模拟方式,仅支持PS(圆口)的键盘 点击查看使用硬件模拟方式的注意事项KeyUp 65,1//65是A键的按键码,上面的语句表示松开A键1次KeyUp "A",1//上面的支持按键字符,语句表示松开A键1次

欧阳数创编

欧阳数创编

脚本例子:

(7.x语法)

复制代码

1.

//KeyUp、KeyUpS、KeyUpH

2.

//KeyUpS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用

3.

//KeyUpH: 硬件模拟方式,仅支持PS(圆口)的键盘 点击查看使用硬件模拟方式的注意事项

4.

KeyUp 65,1

5.

//65是A键的按键码,上面的语句表示松开A键1次

//KeyUp、KeyUpS、KeyUpH//KeyUpS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的键盘都可以使用//KeyUpH: 硬件模拟方式,仅支持PS(圆口)的键盘 点击查看使用硬件模拟方式的注意事项KeyUp 65,1//65是A键的按键码,上面的语句表示松开A键1次

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

WaitKey 等待按任意键

等待按任意键

参数1 整数型,可选:变量名

复制代码

1.

Key=WaitKey()

2.

//脚本运行到这一行会暂停,当用户按下键盘后继续执行,并且把用户的按键码保存在变量Key里

3.

If Key = 13 Then

4.

MessageBox "恭喜你按下了回车键"

5.

End If

Key=WaitKey() //脚本运行到这一行会暂停,当用户按下键盘后继续执行,并且把用户的按键码保存在变量Key里If Key = 13 Then

MessageBox "恭喜你按下了回车键"End If

脚本例子:

(7.x语法)

复制代码

1.

WaitKey Key

2.

//脚本运行到这一行会暂停,当用户按下键盘后继续执行,并且把用户的按键码保存在变量Key里

3.

If Key = 13

4.

Msgbox "恭喜你按下了回车键"

5.

EndIf

WaitKey Key//脚本运行到这一行会暂停,当用户按下键盘后继续执行,并且把用户的按键码保存在变量Key里If Key = 13 Msgbox "恭喜你按下了回车键"EndIf

二、鼠标命令

欧阳数创编

欧阳数创编

命令名称:

命令功能:

命令参数:

GetCursorPos 得到鼠标位置坐标

得到当前鼠标所在的位置坐标

参数1 整数型,返回x坐标

参数2 整数型,返回y坐标

返 回 值:

脚本例子:

(8.x语法)

复制代码

1.

GetCursorPos mx,my

2.

//把当前鼠标位置的x和y坐标放在变量mx和my中

GetCursorPos mx,my//把当前鼠标位置的x和y坐标放在变量mx和my中

脚本例子:

(7.x语法)

复制代码

1.

VBSCall GetCursorPos(mx,my)

2.

//把当前鼠标位置的x和y坐标放在变量mx和my中

VBSCall GetCursorPos(mx,my) //把当前鼠标位置的x和y坐标放在变量mx和my中

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

GetCursorShape 得到鼠标形状

得到当前鼠标的形状特征

参数1 整数型,参数

整数型,鼠标的形状值

复制代码

1.

//参数: 0 是6.83之前的版本默认的参数

2.

//参数: 1 可用于一些在参数0下无法区分鼠标形状代码的情况

3.

//下面是我们普通的WINDOWS鼠标形状特征

4.

//不同电脑上鼠标形状特征也许不同,请使用"抓点抓色"功能抓取正确的鼠标形状特征

5.

Shape1 = 1593350287

6.

//下面是我们访问网页超链接时候的手型鼠标形状

7.

Shape2 = 1055991329

8.

shape=GetCursorShape(0)

9.

If shape = shape1 Then

10.

MessageBox "当前鼠标形状是普通的WINDOWS鼠标"

11.

ElseIf shape = shape2 Then

12.

MessageBox "当前鼠标形状是手型鼠标"

13.

Else

14.

MessageBox "不认识当前鼠标形状!"

15.

End If

//参数: 0 是6.83之前的版本默认的参数//参数: 1 可用于一些在参数0欧阳数创编

欧阳数创编

下无法区分鼠标形状代码的情况//下面是我们普通的WINDOWS鼠标形状特征//不同电脑上鼠标形状特征也许不同,请使用"抓点抓色"功能抓取正确的鼠标形状特征Shape1 = 1593350287//下面是我们访问网页超链接时候的手型鼠标形状Shape2 =

1055991329shape=GetCursorShape(0)If shape = shape1 Then

MessageBox "当前鼠标形状是普通的WINDOWS鼠标"ElseIf shape =

shape2 Then MessageBox "当前鼠标形状是手型鼠标"Else

MessageBox "不认识当前鼠标形状!"End If

脚本例子:

(7.x语法)

复制代码

1.

//参数: 0 是6.83之前的版本默认的参数

2.

//参数: 1 可用于一些在参数0下无法区分鼠标形状代码的情况

3.

//下面是我们普通的WINDOWS鼠标形状特征

4.

//不同电脑上鼠标形状特征也许不同,请使用"抓点抓色"功能抓取正确的鼠标形状特征

5.

Shape1 = 1593350287

6.

//下面是我们访问网页超链接时候的手型鼠标形状

7.

Shape2 = 1055991329

8.

VBSCall Shape=GetCursorShape(0)

9.

If shape = shape1

10.

MessageBox 当前鼠标形状是普通的WINDOWS鼠标

11.

ElseIf shape = shape2

12.

MessageBox 当前鼠标形状是手型鼠标

13.

Else

14.

MessageBox 不认识当前鼠标形状!

15.

EndIf

//参数: 0 是6.83之前的版本默认的参数//参数: 1 可用于一些在参数0下无法区分鼠标形状代码的情况//下面是我们普通的WINDOWS鼠标形状特征//不同电脑上鼠标形状特征也许不同,请使用"抓点抓色"功能抓取正确的鼠标形状特征Shape1 = 1593350287//下面是我们访问网页超链接时候的手型鼠标形状Shape2 = 1055991329VBSCall

Shape=GetCursorShape(0)If shape = shape1 MessageBox 当前鼠标形状是普通的WINDOWS鼠标ElseIf shape = shape2 MessageBox 当前鼠标形状是手型鼠标Else MessageBox 不认识当前鼠标形状!EndIf

命令名称:

命令功能:

GetLastClick 检测上次按过的鼠标键

检测上一次按下的鼠标代码

欧阳数创编

欧阳数创编

命令参数:

返 回 值:

脚本例子:

(8.x语法)

参数1 整数型,可选:变量名

复制代码

1.

Mouse=GetLastClick()

2.

If Mouse =32770 Or Mouse =32769 Then

3.

Msgbox "你按下了鼠标左键"

4.

End If

Mouse=GetLastClick() If Mouse =32770 Or Mouse =32769 Then

Msgbox "你按下了鼠标左键"End If

脚本例子:

(7.x语法)

复制代码

1.

GetLastClick Mouse

2.

If Mouse =32770 Or Mouse =32769

3.

Msgbox "你按下了鼠标左键"

4.

EndIf

LeftClick 左键单击

模拟点击鼠标左键

参数1 整数型,次数

复制代码

1.

//LeftClick、LeftClickS、LeftClickH

2.

//LeftClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用

3.

//LeftClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标 点击查看使用硬件模拟方式的注意事项

4.

LeftClick 5

5.

//在当前鼠标的位置单击鼠标左键5次

//LeftClick、LeftClickS、LeftClickH//LeftClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用//LeftClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标 点击查看使用硬件模拟方式的注意事项LeftClick 5//在当前鼠标的位置单击鼠标左键5次

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

脚本例子:

(7.x语法)

复制代码

1.

//LeftClick、LeftClickS、LeftClickH

2.

//LeftClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用

3.

//LeftClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标 点击查看使用硬件模拟方式的注意事项

4.

LeftClick 5

欧阳数创编

欧阳数创编

5.

//在当前鼠标的位置单击鼠标左键5次

//LeftClick、LeftClickS、LeftClickH//LeftClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用//LeftClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标 点击查看使用硬件模拟方式的注意事项LeftClick 5//在当前鼠标的位置单击鼠标左键5次

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

LeftDoubleClick 左键双击

模拟双击鼠标左键

参数1 整数型,次数

复制代码

1.

//LeftDoubleClick、LeftDoubleClickS、LeftDoubleClickH]

2.

//LeftDoubleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用

3.

//LeftDoubleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标 点击查看使用硬件模拟方式的注意事项

4.

LeftDoubleClick 5

5.

//在当前鼠标的位置双击鼠标左键5次

//LeftDoubleClick、LeftDoubleClickS、LeftDoubleClickH]//LeftDoubleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用//LeftDoubleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标 点击查看使用硬件模拟方式的注意事项LeftDoubleClick 5//在当前鼠标的位置双击鼠标左键5次

脚本例子:

(7.x语法)

复制代码

1.

//LeftDoubleClick、LeftDoubleClickS、LeftDoubleClickH]

2.

//LeftDoubleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用

3.

//LeftDoubleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标 点击查看使用硬件模拟方式的注意事项

4.

LeftDoubleClick 5

5.

//在当前鼠标的位置双击鼠标左键5次

//LeftDoubleClick、LeftDoubleClickS、LeftDoubleClickH]//LeftDoubleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用//LeftDoubleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标 点击查看欧阳数创编

欧阳数创编

使用硬件模拟方式的注意事项LeftDoubleClick 5//在当前鼠标的位置双击鼠标左键5次

命令名称:

命令功能:

仍可以改变鼠标位置

命令参数:

返 回 值:

脚本例子:

(8.x语法)

复制代码

1.

//在脚本开始的时候使用这个命令,可以有效防止用户误触鼠标引起脚本执行出错

2.

LockMouse

3.

Do

4.

Delay 1000

5.

Loop

//在脚本开始的时候使用这个命令,可以有效防止用户误触鼠标引起脚本执行出错LockMouseDo Delay 1000Loop

脚本例子:

(7.x语法)

复制代码

1.

//在脚本开始的时候使用这个命令,可以有效防止用户误触鼠标引起脚本执行出错

2.

LockMouse

3.

While True

4.

Delay 1000

5.

EndWhile

MiddleClick 中键单击

模拟点击鼠标中键

参数1 整数型,次数

复制代码

1.

//MiddleClick、MiddleClickS、MiddleClickH

2.

//MiddleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用

3.

//MiddleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标 点击查看使用硬件模拟方式的注意事项

4.

MiddleClick 5

5.

//在当前鼠标的位置单击鼠标中键5次

//MiddleClick、MiddleClickS、MiddleClickH//MiddleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接LockMouse 锁定鼠标位置

锁定鼠标位置,用户将不能通过移动鼠标而改变鼠标位置,而脚本命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

欧阳数创编

欧阳数创编

口的鼠标都可以使用//MiddleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标 点击查看使用硬件模拟方式的注意事项MiddleClick 5//在当前鼠标的位置单击鼠标中键5次

脚本例子:

(7.x语法)

复制代码

1.

//MiddleClick、MiddleClickS、MiddleClickH

2.

//MiddleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用

3.

//MiddleClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标 点击查看使用硬件模拟方式的注意事项

4.

MiddleClick 5

5.

//在当前鼠标的位置单击鼠标中键5次

MouseWheel 鼠标滚轮

滚动鼠标滚轮

参数1 整数型,滚动量

复制代码

1.

//如果滚动量为正,向上滚动;否则向下滚动.

2.

//仅支持Windows 2000以上的操作系统.

3.

MouseWheel 1

4.

//把鼠标滚轮向上滚动1格

//如果滚动量为正,向上滚动;否则向下滚动.//仅支持Windows 2000以上的操作系统.MouseWheel 1//把鼠标滚轮向上滚动1格

脚本例子:

(7.x语法)

复制代码

1.

//如果滚动量为正,向上滚动;否则向下滚动.

2.

//仅支持Windows 2000以上的操作系统.

3.

MouseWheel 1

4.

//把鼠标滚轮向上滚动1格

MoveR 鼠标相对移动

鼠标相对移动到

参数1 整数型,X距离

参数2 整数型,Y距离

返 回 值:

脚本例子:

(8.x语法)

复制代码

1.

//MoveR、MoveRS、MoveRH

2.

//MoveRS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

命令名称:

命令功能:

命令参数:

欧阳数创编

欧阳数创编

3.

//MoveRH: 硬件模拟方式,仅支持PS(圆口)的鼠标 点击查看使4.

5.

6.

7.

用硬件模拟方式的注意事项

//当前鼠标在(100,100)点,使用下面语句

MoveR 200,300

//之后,鼠标就被移到了(100+200,100+300)处,也就是坐标(300,400)处

//提示:使用硬件模拟方式不能碰键盘鼠标,否则会导致出错

//MoveR、MoveRS、MoveRH//MoveRS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用//MoveRH: 硬件模拟方式,仅支持PS(圆口)的鼠标 点击查看使用硬件模拟方式的注意事项//当前鼠标在(100,100)点,使用下面语句MoveR 200,300//之后,鼠标就被移到了(100+200,100+300)处,也就是坐标(300,400)处//提示:使用硬件模拟方式不能碰键盘鼠标,否则会导致出错

脚本例子:

(7.x语法)

复制代码

1.

//MoveR、MoveRS、MoveRH

2.

//MoveRS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用

3.

//MoveRH: 硬件模拟方式,仅支持PS(圆口)的鼠标 点击查看使用硬件模拟方式的注意事项

4.

//当前鼠标在(100,100)点,使用下面语句

5.

MoveR 200,300

6.

//之后,鼠标就被移到了(100+200,100+300)处,也就是坐标(300,400)处

7.

//提示:使用硬件模拟方式不能碰键盘鼠标,否则会导致出错

//MoveR、MoveRS、MoveRH//MoveRS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用//MoveRH: 硬件模拟方式,仅支持PS(圆口)的鼠标 点击查看使用硬件模拟方式的注意事项//当前鼠标在(100,100)点,使用下面语句MoveR 200,300//之后,鼠标就被移到了(100+200,100+300)处,也就是坐标(300,400)处//提示:使用硬件模拟方式不能碰键盘鼠标,否则会导致出错

命令名称:

命令功能:

命令参数:

MoveTo 鼠标移动

移动鼠标到

参数1 整数型,X坐标

参数2 整数型,Y坐标

返 回 值:

欧阳数创编

欧阳数创编

脚本例子:

(8.x语法)

复制代码

1.

//MoveTo、MoveToS、MoveToH

2.

//MoveToS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用

3.

//MoveToH: 硬件模拟方式,仅支持PS(圆口)的鼠标

4.

MoveTo 100,200

5.

//把鼠标移动到(100,200)这个点上

6.

intX=50

7.

intY=150

8.

MoveTo intX,intY

9.

//把鼠标移动到(intX,intY)这个点上,需要5.50以上版本支持.

//MoveTo、MoveToS、MoveToH//MoveToS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用//MoveToH: 硬件模拟方式,仅支持PS(圆口)的鼠标MoveTo

100,200//把鼠标移动到(100,200)这个点上intX=50intY=150MoveTo

intX,intY//把鼠标移动到(intX,intY)这个点上,需要5.50以上版本支持.

脚本例子:

(7.x语法)

复制代码

1.

//MoveTo、MoveToS、MoveToH

2.

//MoveToS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用

3.

//MoveToH: 硬件模拟方式,仅支持PS(圆口)的鼠标

4.

MoveTo 100,200

5.

//把鼠标移动到(100,200)这个点上

6.

intX=50

7.

intY=150

8.

MoveTo intX,intY

9.

//把鼠标移动到(intX,intY)这个点上,需要5.50以上版本支持.

RestoreMousePos 恢复上次保存的鼠标位置

保存当前鼠标位置

复制代码

1.

SaveMousePos

2.

//保存当前鼠标位置

3.

Delay 100

4.

MoveTo 500,20

5.

Delay 100

6.

RestoreMousePos

7.

//将鼠标移动到上一次保存的鼠标位置

8.

//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,

9.

//这样脚本执行后鼠标的位置就不会变化

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

欧阳数创编

欧阳数创编

SaveMousePos//保存当前鼠标位置Delay 100MoveTo 500,20Delay

100RestoreMousePos//将鼠标移动到上一次保存的鼠标位置//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,//这样脚本执行后鼠标的位置就不会变化

脚本例子:

(7.x语法)

复制代码

1.

SaveMousePos

2.

//保存当前鼠标位置

3.

Delay 100

4.

MoveTo 500,20

5.

Delay 100

6.

RestoreMousePos

7.

//将鼠标移动到上一次保存的鼠标位置

8.

//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,

9.

这样脚本执行后鼠标的位置就不会变化

SaveMousePos//保存当前鼠标位置Delay 100MoveTo 500,20Delay

100RestoreMousePos//将鼠标移动到上一次保存的鼠标位置//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,这样脚本执行后鼠标的位置就不会变化

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

RightClick 右键单击

模拟点击鼠标右键

参数1 整数型,次数

复制代码

1.

//RightClick、RightClickS、RightClickH

2.

//RightClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用

3.

//RightClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标 点击查看使用硬件模拟方式的注意事项

4.

RightClick 5

5.

//在当前鼠标的位置单击鼠标右键5次

//RightClick、RightClickS、RightClickH//RightClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用//RightClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标

点击查看使用硬件模拟方式的注意事项RightClick 5//在当前鼠标的位置单击鼠标右键5次

脚本例子: 复制代码

欧阳数创编

欧阳数创编

1.

//RightClick、RightClickS、RightClickH

2.

//RightClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有(7.x语法)

特别的要求,PS2(圆口)和USB接口的鼠标都可以使用

3.

//RightClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标 点击查看使用硬件模拟方式的注意事项

4.

RightClick 5

5.

//在当前鼠标的位置单击鼠标右键5次

//RightClick、RightClickS、RightClickH//RightClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和USB接口的鼠标都可以使用//RightClickH: 硬件模拟方式,仅支持PS(圆口)的鼠标

点击查看使用硬件模拟方式的注意事项RightClick 5//在当前鼠标的位置单击鼠标右键5次

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

SaveMousePos 保存当前鼠标所在位置

保存当前鼠标位置

复制代码

1.

SaveMousePos

2.

//保存当前鼠标位置

3.

Delay 100

4.

MoveTo 500,20

5.

Delay 100

6.

RestoreMousePos

7.

//将鼠标移动到上一次保存的鼠标位置

8.

//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,

9.

//这样脚本执行后鼠标的位置就不会变化

SaveMousePos//保存当前鼠标位置Delay 100MoveTo 500,20Delay

100RestoreMousePos//将鼠标移动到上一次保存的鼠标位置//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,//这样脚本执行后鼠标的位置就不会变化

脚本例子:

(7.x语法)

复制代码

1.

SaveMousePos

2.

//保存当前鼠标位置

3.

Delay 100

4.

MoveTo 500,20

5.

Delay 100

6.

RestoreMousePos

7.

//将鼠标移动到上一次保存的鼠标位置

8.

//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,

欧阳数创编

欧阳数创编

9.

这样脚本执行后鼠标的位置就不会变化

SaveMousePos//保存当前鼠标位置Delay 100MoveTo 500,20Delay

100RestoreMousePos//将鼠标移动到上一次保存的鼠标位置//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位置,这样脚本执行后鼠标的位置就不会变化

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

脚本例子:

(7.x语法)

UnlockMouse 解除锁定鼠标位置

解除LockMouse命令对鼠标位置的锁定

复制代码

1.

复制代码

1.

//如果用户使用了LockMouse命令而没有使用UnlockMouse命令,按键精灵会在脚本结束时自动解除锁定

2.

UnlockMouse

//如果用户使用了LockMouse命令而没有使用UnlockMouse命令,按键精灵会在脚本结束时自动解除锁定UnlockMouse

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

WaitClick 按任意鼠标键继续

脚本执行到这一句暂停,按下任意鼠标键之后继续

参数1 整数型,可选:变量名

复制代码

1.

last_click=WaitClick()

2.

MessageBox "您按下了" & last_click

last_click=WaitClick() MessageBox "您按下了" & last_click

脚本例子:

(7.x语法)

复制代码

1.

WaitClick last_click

2.

MessageBox "您按下了" & last_click

WaitClick last_clickMessageBox "您按下了" & last_click

三、控制命令

命令名称:

命令功能:

Call 调用过程

调用过程

欧阳数创编

欧阳数创编

命令参数:

返 回 值:

脚本例子:

(8.x语法)

参数1 字符串型,过程名

复制代码

1.

Call 子程序("我是子程序,被你调用了")

2.

EndScript

3.

//支持中文名变量

4.

Sub 子程序(啊)

5.

Msgbox 啊

6.

End Sub

7.

//定义一个过程,可以在脚本中调用这个过程

Call 子程序("我是子程序,被你调用了")EndScript//支持中文名变量Sub 子程序(啊) Msgbox 啊End Sub//定义一个过程,可以在脚本中调用这个过程

脚本例子:

复制代码

(7.x语法)

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

Do 循环

条件循环

参数1 条件型,循环条件

复制代码

1.

例子1:

2.

//支持Exit Do 命令退出循环

3.

i=0

4.

Do While i=0

5.

Msgbox "我停不下来啦!!快住手"

6.

Loop

7.

//当循环条件成立的时候,反复执行循环体

8.

9.

10.

例子2:

11.

i=0

12.

Do Until i=0

13.

Msgbox "为什么没有循环到我呢?"

14.

Loop

15.

Msgbox "循环结束"

16.

//当循环条件成立的时候,离开循环体

17.

18.

19.

例子3:

20.

i=0

21.

Do Until i=1

22.

Msgbox "我停不下来啦!!快住手"

欧阳数创编

欧阳数创编

23.

Loop

24.

//当循环条件不成立的时候,反复执行循环体

25.

26.

27.

例子4:

28.

n=0

29.

Do While true

30.

Msgbox "我将循环10次停下来!!"

31.

If n>=10 Then

32.

//当循环条件成立的时候,离开循环体

33.

Exit do

34.

End if

35.

n=n+1

36.

Loop

37.

Msgbox n & "次"

38.

39.

40.

例子5:

41.

i = 0

42.

Do

43.

MessageBox "ok"

44.

Loop While i <> 0

45.

//条件放后面,前面的循环内容可以执行一次!

例子1://支持Exit Do 命令退出循环i=0Do While i=0 Msgbox "我停不下来啦!!快住手"Loop//当循环条件成立的时候,反复执行循环体例子2:i=0Do Until i=0 Msgbox "为什么没有循环到我呢?"LoopMsgbox "循环结束"//当循环条件成立的时候,离开循环体例子3:i=0Do Until i=1 Msgbox "我停不下来啦!!快住手"Loop//当循环条件不成立的时候,反复执行循环体例子4:n=0Do While true

Msgbox "我将循环10次停下来!!" If n>=10 Then //当循环条件成立的时候,离开循环体 Exit do End if n=n+1LoopMsgbox n

& "次"例子5:i = 0Do MessageBox "ok"Loop While i <> 0//条件放后面,前面的循环内容可以执行一次!

脚本例子:

(7.x语法)

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

复制代码

1.

For 循环

循环一定次数

参数1 整数型,循环次数

复制代码

欧阳数创编

欧阳数创编

1.

例子1:

(8.x语法)

//支持Exit For 命令退出循环

For i=0 To 9

Delay 100

Next

//循环10次

例子2:

9.

//支持Exit For 命令退出循环

10.

For 10

11.

Delay 100

12.

Next

13.

//循环10次

14.

15.

16.

例子3:

17.

//支持Exit For 命令退出循环

18.

For i=0 to 19 step 2

19.

Delay 100

20.

Next

21.

//循环10次

22.

23.

例子4:

24.

//支持Exit For 命令退出循环

25.

For i=0 to 19 step 2

26.

Delay 100

27.

If i>9 Then

28.

Exit For

29.

End If

30.

Next

31.

//循环5次

2.

3.

4.

5.

6.

7.

8.

例子1://支持Exit For 命令退出循环For i=0 To 9 Delay 100Next//循环10次例子2://支持Exit For 命令退出循环For 10 Delay

100Next//循环10次例子3://支持Exit For 命令退出循环For i=0 to

19 step 2 Delay 100Next//循环10次例子4://支持Exit For 命令退出循环For i=0 to 19 step 2 Delay 100 If i>9 Then Exit For

End IfNext//循环5次

脚本例子:

(7.x语法)

复制代码

1.

For 10

2.

Delay 100

3.

EndFor

4.

//循环10次

Function 函数

函数

多类型,多参数

命令名称:

命令功能:

命令参数:

欧阳数创编

欧阳数创编

返 回 值:

脚本例子:

(8.x语法)

多类型

复制代码

1.

//支持Exit Function 命令退出函数过程

2.

Msgbox 函数过程("我是函数,被你调用了")

3.

EndScript

4.

Function 函数过程(a)

5.

函数过程=a

6.

End Function

7.

//定义一个函数过程,可以在脚本中调用这个函数

//支持Exit Function 命令退出函数过程Msgbox 函数过程("我是函数,被你调用了")EndScriptFunction 函数过程(a) 函数过程=aEnd

Function//定义一个函数过程,可以在脚本中调用这个函数

脚本例子:

(7.x语法)

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

复制代码

1.

Gosub 调用子程序

调用过程

参数1 字符串型,过程名

复制代码

1.

//可带参数传递

2.

Call 子程序("我是子程序,被你调用了")

3.

EndScript

4.

Sub 子程序(a)

5.

Msgbox a

6.

End Sub

7.

//定义一个过程,可以在脚本中调用这个过程

//可带参数传递Call 子程序("我是子程序,被你调用了")EndScriptSub

子程序(a) Msgbox aEnd Sub //定义一个过程,可以在脚本中调用这个过程

脚本例子:

(7.x语法)

复制代码

1.

Gosub 子程序

2.

EndScript

3.

Sub 子程序

4.

Msgbox "我是子程序,被你调用了"

5.

Return 子程序

6.

//定义一个过程,可以在脚本中调用这个过程

Gosub 子程序EndScriptSub 子程序 Msgbox "我是子程序,被你调用了"Return 子程序//定义一个过程,可以在脚本中调用这个过程

欧阳数创编

欧阳数创编

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

Goto 跳转到标记

跳转到Rem标记处

参数1 字符串型,标号

复制代码

1.

Goto 标记

2.

Delay 100

3.

Rem 标记

4.

Msgbox "你直接跳到这里了!!,上面的延迟没有被执行!!"

5.

//跳转语句,可以跳转到rem标记过的标记处继续执行

Goto 标记Delay 100Rem 标记Msgbox "你直接跳到这里了!!,上面的延迟没有被执行!!"//跳转语句,可以跳转到rem标记过的标记处继续执行

脚本例子:

(7.x语法)

复制代码

1.

Goto 标记

2.

Delay 100

3.

Rem 标记

4.

Msgbox "你直接跳到这里了!!,上面的延迟没有被执行!!"

5.

//跳转语句,可以跳转到rem标记过的标记处继续执行

Goto 标记Delay 100Rem 标记Msgbox "你直接跳到这里了!!,上面的延迟没有被执行!!"//跳转语句,可以跳转到rem标记过的标记处继续执行

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

If 如果..则

判断表达式

参数1 条件型,表达式

复制代码

1.

例子1:

2.

i=0

3.

If i=0 Then

4.

Msgbox "条件判断符合被通过!!"

5.

End If

6.

//通过判断表达式的取值,来执行后面的动作或控制

7.

8.

例子2:

9.

i=1

10.

If i=0 Then

11.

Msgbox "条件判断符合被通过!!"

欧阳数创编

欧阳数创编

12.

ElseIf i=1 Then

13.

Msgbox "否则条件判断符合被通过!!"

14.

Else

15.

Msgbox "否则!!"

16.

End If

17.

//通过判断表达式的取值,来执行后面的动作或控制

例子1:i=0If i=0 Then Msgbox "条件判断符合被通过!!"End If//通过判断表达式的取值,来执行后面的动作或控制例子2:i=1If i=0 Then

Msgbox "条件判断符合被通过!!"ElseIf i=1 Then Msgbox "否则条件判断符合被通过!!"Else Msgbox "否则!!"End If//通过判断表达式的取值,来执行后面的动作或控制

脚本例子:

(7.x语法)

复制代码

1.

i=0

2.

If i=0

3.

Msgbox "条件判断符合被通过!!"

4.

EndIf

5.

//通过判断表达式的取值,来执行后面的动作或控

IfColor 颜色判断

判断屏幕某点的颜色

参数1 整数型,屏幕X坐标

参数2 整数型,屏幕Y坐标

参数3 字符串型,颜色16进制值

参数4 整数型,判断条件

返 回 值:

脚本例子:

(8.x语法)

复制代码

1.

例子1:

2.

//判断条件(0:等于 1:不等于 2:近似等于)

3.

IfColor 860,27,"e1b072",0 Then

4.

Msgbox "颜色等于"

5.

Else

6.

Msgbox "颜色不等于"

7.

End If

8.

//判断坐标点(860,27)的颜色是否等于e1b072

9.

10.

11.

例子2:

12.

a=1:b=1

13.

IfColor 650,118,"78F0E8",2 Then

14.

MessageBox "a"

15.

ElseIf b=a Then

16.

MessageBox "b"

17.

End if

命令名称:

命令功能:

命令参数:

欧阳数创编

欧阳数创编

例子1://判断条件(0:等于 1:不等于 2:近似等于)IfColor

860,27,"e1b072",0 Then Msgbox "颜色等于"Else Msgbox "颜色不等于"End If//判断坐标点(860,27)的颜色是否等于e1b072例子2:a=1:b=1IfColor 650,118,"78F0E8",2 Then MessageBox "a"ElseIf b=a

Then MessageBox "b"End if

脚本例子:

(7.x语法)

复制代码

1.

//判断条件(0:等于 1:不等于 2:近似等于)

2.

IfColor 860,27,e1b072,0

3.

Msgbox "颜色等于"

4.

Else

5.

Msgbox "颜色不等于"

6.

EndIf

7.

//判断坐标点(860,27)的颜色是否等于e1b072

//判断条件(0:等于 1:不等于 2:近似等于)IfColor 860,27,e1b072,0

Msgbox "颜色等于"Else Msgbox "颜色不等于"EndIf//判断坐标点(860,27)的颜色是否等于e1b072

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

Rem 标记/注释

标记命令可当注释

参数1 字符串型,文字

复制代码

1.

//不支持数字开头的和符号作为标记名

2.

//标记命令.即可当注释,也可以为Goto跳转指令作标记

3.

Rem 脚本开始

//不支持数字开头的和符号作为标记名//标记命令.即可当注释,也可以为Goto跳转指令作标记Rem 脚本开始

脚本例子:

(7.x语法)

命令名称:

命令功能:

命令参数:

返 回 值:

复制代码

1.

//标记命令.即可当注释,也可以为Goto跳转指令作标记

2.

Rem 脚本开始

RestartScript 重新启动脚本运行

重新启动脚本运行

欧阳数创编

欧阳数创编

脚本例子:

(8.x语法)

复制代码

1.

For i=0 to 2

2.

Delay 1000

3.

Call rTXT(0, 0, 1024, 768, "屏幕内容填写" & i, "0000FF")

4.

Next

5.

RestartScript //重新启动脚本运行

For i=0 to 2 Delay 1000 Call rTXT(0, 0, 1024,

768, "屏幕内容填写" & i, "0000FF") Next RestartScript //重新启动脚本运行

脚本例子:

(7.x语法)

复制代码

1.

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

Select 情况条件选择

根据情况选择条件判断

参数1 条件型,情况

复制代码

1.

//不支持判断语句 如:Case a>0

2.

UserVar 变量=0 "输入(0~9)数字"

3.

//<>以下是选择条件结结构判断

4.

Select Case 变量

5.

Case 0

6.

Msgbox "你输入的数字为:0"

7.

Case 1

8.

Msgbox "你输入的数字为:1"

9.

Case 2

10.

Msgbox "你输入的数字为:2"

11.

Case 3

12.

Msgbox "你输入的数字为:3"

13.

Case 4

14.

Msgbox "你输入的数字为:4"

15.

Case 5

16.

Msgbox "你输入的数字为:5"

17.

Case 6

18.

Msgbox "你输入的数字为:6"

19.

Case 7

20.

Msgbox "你输入的数字为:7"

21.

Case 8

22.

Msgbox "你输入的数字为:8"

23.

Case 9

24.

Msgbox "你输入的数字为:9"

25.

Case Else

欧阳数创编

欧阳数创编

26.

Msgbox "你输入的数字不正确,请输入(0~9)数字!"

27.

End Select

//不支持判断语句 如:Case a>0UserVar 变量=0 "输入(0~9)数字"//<>以下是选择条件结结构判断Select Case 变量Case 0 Msgbox "你输入的数字为:0" Case 1 Msgbox "你输入的数字为:1" Case 2

Msgbox "你输入的数字为:2" Case 3 Msgbox "你输入的数字为:3"

Case 4 Msgbox "你输入的数字为:4" Case 5 Msgbox "你输入的数字为:5" Case 6 Msgbox "你输入的数字为:6" Case 7 Msgbox "你输入的数字为:7" Case 8 Msgbox "你输入的数字为:8" Case 9

Msgbox "你输入的数字为:9" Case Else Msgbox "你输入的数字不正确,请输入(0~9)数字!"End Select

脚本例子:

(7.x语法)

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

复制代码

1.

Sub 子程序

定义一个过程

参数1 字符串型,过程名

复制代码

1.

//支持Exit Sub 命令退出子程序过程

2.

Call 子程序()

3.

EndScript

4.

Sub 子程序()

5.

Msgbox "我是子程序,被你调用了"

6.

End Sub

7.

//定义一个过程,可以在脚本中调用这个过程

//支持Exit Sub 命令退出子程序过程Call 子程序()EndScriptSub 子程序() Msgbox "我是子程序,被你调用了"End Sub//定义一个过程,可以在脚本中调用这个过程

脚本例子:

(7.x语法)

复制代码

1.

Gosub 子程序

2.

EndScript

3.

Sub 子程序

4.

Msgbox "我是子程序,被你调用了"

5.

Return 子程序

6.

//定义一个过程,可以在脚本中调用这个过程

Gosub 子程序EndScriptSub 子程序 Msgbox "我是子程序,被你调用欧阳数创编

欧阳数创编

了"Return 子程序//定义一个过程,可以在脚本中调用这个过程

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

While 如果..则循环

条件循环

参数1 条件型,循环条件

复制代码

1.

i=0

2.

While i=0

3.

Msgbox "我停不下来啦!!快住手"

4.

Wend

5.

//当循环条件成立的时候,反复执行循环体

i=0While i=0 Msgbox "我停不下来啦!!快住手"Wend//当循环条件成立的时候,反复执行循环体

脚本例子:

(7.x语法)

复制代码

1.

i=0

2.

While i=0

3.

Msgbox "我停不下来啦!!快住手"

4.

EndWhile

5.

//当循环条件成立的时候,反复执行循环体

i=0While i=0 Msgbox "我停不下来啦!!快住手"EndWhile//当循环条件成立的时候,反复执行循环体

四、颜色/图像命令

命令名称:

命令功能:

命令参数1 整数型,屏幕左上角x坐标

参参数2 整数型,屏幕左上角y坐标

在屏幕区域从中心开始查找指定的颜色

FindCenterColor 中心找色

数:

参数3 整数型,屏幕右下角x坐标

参数4 整数型,屏幕右下角y坐标

参数5 字符串型,16进制颜色值

参数6 整数型,返回x坐标

欧阳数创编

欧阳数创编

参数7 整数型,返回y坐标

值:

脚本复制代码

1.

//FindCenterColor left,top,right,bottom,c,x,y

例2.

//在区域内从中心到外围找颜色为c的点,把坐标保存在变量x和y中

3.

//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,子:

下界限

(8.x4.

//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号

5.

//如果没有找到这个颜色,则x和y的值都被置为1

语6.

FindCenterColor 0,0,800,600,"0000FF",x,y

7.

If x>0 and y>0 Then

法)

8.

MoveTo x,y

9.

End If

10.

//在区域(0,0,800,600)中找红色("0000FF")的点,如果找到,则把鼠标移动到这个点

//FindCenterColor left,top,right,bottom,c,x,y//在区域内从中心到外围找颜色为c的点,把坐标保存在变量x和y中//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,下界限//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号//如果没有找到这个颜色,则x和y的值都被置为1FindCenterColor

0,0,800,600,"0000FF",x,yIf x>0 and y>0 Then MoveTo x,yEnd If //在区域(0,0,800,600)中找红色("0000FF")的点,如果找到,则把鼠标移动到这个点

脚本复制代码

1.

//VBSCall FindCenterColor(left,top,right,bottom,c,x,y)

例2.

//在区域内从中心到外围找颜色为c的点,把坐标保存在变量x和y中

3.

//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,子:

下界限

(7.x4.

//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号

5.

//如果没有找到这个颜色,则x和y的值都被置为1

语6.

VBSCall FindCenterColor(0,0,800,600,"0000FF",x,y)

7.

If x>0 and y>0

法)

8.

MoveTo x,y

9.

EndIf

10.

//在区域(0,0,800,600)中找红色("0000FF")的点,如果找到,则把鼠标移动到这个点

//VBSCall FindCenterColor(left,top,right,bottom,c,x,y)//在区域内从中心到外围找颜色为c的点,把坐标保存在变量x和y中//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,下界限//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号//如果没有找到这个颜色,则x和y的值都被置为无

欧阳数创编

欧阳数创编

1VBSCall FindCenterColor(0,0,800,600,"0000FF",x,y)If x>0 and y>0 MoveTo x,yEndIf

//在区域(0,0,800,600)中找红色("0000FF")的点,如果找到,则把鼠标移动到这个点

命令名称:

命令功能:

命令参数1 整数型,屏幕左上角x坐标

参参数2 整数型,屏幕左上角y坐标

在屏幕区域从左到右、从上到下的查找指定的颜色

FindColor 找色

数:

参数3 整数型,屏幕右下角x坐标

参数4 整数型,屏幕右下角y坐标

参数5 字符串型,16进制颜色值

参数6 整数型,返回x坐标

参数7 整数型,返回y坐标

值:

脚本复制代码

1.

//FindColor left,top,right,bottom,c,x,y

例2.

//在区域内从左到右,从上到下找颜色为c的点,把坐标保存在变量x和y中

子:

3.

//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,(8.x下界限

4.

//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号

语5.

//如果没有找到这个颜色,则x和y的值都被置为1

6.

FindColor 0,0,800,600,"0000FF",x,y

法)

7.

If x>0 and y>0 Then

8.

MoveTo x,y

9.

End If

10.

//在区域(0,0,800,600)中找红色("0000FF")的点,如果找到,则把鼠标移动到这个点

//FindColor left,top,right,bottom,c,x,y//在区域内从左到右,从上到下找颜色为c的点,把坐标保存在变量x和y中//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,下界限//颜色是类似于"0000FF"的字符串,如果不取变无

欧阳数创编

欧阳数创编

量,别忘了加双引号//如果没有找到这个颜色,则x和y的值都被置为1FindColor

0,0,800,600,"0000FF",x,yIf x>0 and y>0 Then MoveTo x,yEnd If //在区域(0,0,800,600)中找红色("0000FF")的点,如果找到,则把鼠标移动到这个点

脚本复制代码

1.

//VBSCall FindColor(left,top,right,bottom,c,x,y)

例2.

//在区域内从左到右,从上到下找颜色为c的点,把坐标保存在变量x和y中

子:

3.

//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,(7.x下界限

4.

//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号

语5.

//如果没有找到这个颜色,则x和y的值都被置为1

6.

VBSCall FindColor(0,0,800,600,"0000FF",x,y)

法)

7.

If x>0 and y>0

8.

MoveTo x,y

9.

EndIf

10.

//在区域(0,0,800,600)中找红色("0000FF")的点,如果找到,则把鼠标移动到这个点

命令名称:

命令功能:

命令参数1 整数型,屏幕左上角x坐标

参参数2 整数型,屏幕左上角y坐标

在屏幕区域模糊查找指定的颜色

FindColorEx 模糊找色

数:

参数3 整数型,屏幕右下角x坐标

参数4 整数型,屏幕右下角y坐标

参数5 字符串型,16进制颜色值

参数6 整数型,查找方式

参数7 整数型,相似度

参数8 整数型,返回x坐标

参数9 整数型,返回y坐标

值:

欧阳数创编

欧阳数创编

脚本复制代码

1.

//FindColorEx left,top,right,bottom,c,type,similar,x,y

例2.

//在区域内找颜色为c的点,把坐标保存在变量x和y中

3.

//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,子:

下界限

(8.x4.

//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号

5.

//type表示查找方式。0为从上往下,从左往右找;1为从中心往外围找

语6.

//similar为相似度,取0.3到1之间的小数。数值越大,对相似度要求越严格。推荐取0.8

法)

7.

//如果没有找到这个颜色,则x和y的值都被置为1

8.

FindColorEx 0,0,800,600,"0000FF",1,0.8,x,y

9.

If x>0 and y>0 Then

10.

MoveTo x,y

11.

End If

12.

//在区域(0,0,800,600)中,从中间开始找接近红色("0000FF")的点,如果找到,则把鼠标移动到这个点

//FindColorEx left,top,right,bottom,c,type,similar,x,y//在区域内找颜色为c的点,把坐标保存在变量x和y中//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,下界限//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号//type表示查找方式。0为从上往下,从左往右找;1为从中心往外围找//similar为相似度,取0.3到1之间的小数。数值越大,对相似度要求越严格。推荐取0.8//如果没有找到这个颜色,则x和y的值都被置为1FindColorEx

0,0,800,600,"0000FF",1,0.8,x,yIf x>0 and y>0 Then MoveTo x,yEnd If //在区域(0,0,800,600)中,从中间开始找接近红色("0000FF")的点,如果找到,则把鼠标移动到这个点

脚本复制代码

1.

//VBSCall FindColorEx(left,top,right,bottom,c,type,similar,x,y)

例2.

//在区域内找颜色为c的点,把坐标保存在变量x和y中

3.

//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,子:

下界限

(7.x4.

//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号

5.

//type表示查找方式。0为从上往下,从左往右找;1为从中心往外围找

语6.

//similar为相似度,取0.3到1之间的小数。数值越大,对相似度要求越严格。推荐取0.8

法)

7.

//如果没有找到这个颜色,则x和y的值都被置为1

8.

VBSCall FindColorEx(0,0,800,600,"0000FF",1,0.8,x,y)

9.

If x>0 and y>0

10.

MoveTo x,y

11.

EndIf

12.

//在区域(0,0,800,600)中,从中间开始找接近红色("0000FF")的点,如果找到,则把鼠标移动到这个点

//VBSCall FindColorEx(left,top,right,bottom,c,type,similar,x,y)//在区域内找颜色为c的点,把坐标保存在变量x和y中//left,top,right,bottom都是整数或者整数型变量,说欧阳数创编

欧阳数创编

明了区域的左,上,右,下界限//颜色是类似于"0000FF"的字符串,如果不取变量,别忘了加双引号//type表示查找方式。0为从上往下,从左往右找;1为从中心往外围找//similar为相似度,取0.3到1之间的小数。数值越大,对相似度要求越严格。推荐取0.8//如果没有找到这个颜色,则x和y的值都被置为1VBSCall

FindColorEx(0,0,800,600,"0000FF",1,0.8,x,y)If x>0 and y>0 MoveTo x,yEndIf //在区域(0,0,800,600)中,从中间开始找接近红色("0000FF")的点,如果找到,则把鼠标移动到这个点

命令名称:

命令功能:

命令参数1 整数型,屏幕左上角x坐标

参参数2 整数型,屏幕左上角y坐标

在屏幕区域查找指定相似度的图片

FindPic 找图

数:

参数3 整数型,屏幕右下角x坐标

参数4 整数型,屏幕右下角y坐标

参数5 字符串型,bmp格式图片路径

参数6 整数型,相似度

参数7 整数型,返回x坐标

参数8 整数型,返回y坐标

值:

脚本复制代码

1.

//FindPic left,top,right,bottom,filename,similar,x,y

例2.

//在区域内从左到右,从上到下找文件名为filename的bmp文件,把找到的坐标保存在变量x和y中

子:

3.

//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,(8.x下界限

4.

//filename是一个bmp格式的图片,需要您自己抓取,最好是24位,把边缘语都设为单一的颜色

5.

//similar为相似度,取0.5到1之间的小数。数值越大,对图片的相似度要法)

求越严格,速度也越快。推荐取0.9

欧阳数创编

欧阳数创编

6.

//如果没有找到图片,则x和y的值都被置为1

7.

//推荐使用周围颜色单一的图片

8.

MessageBox "这个例子会启动一个Windows自带的扫雷程序,然后查找扫雷程序里的笑脸图形"

9.

RunApp ""

10.

//加入一点延时,让扫雷程序顺利启动

11.

Delay 2000

12.

FindPic 0,50,1023,767,"",0.9,intX,intY

13.

If intX>0 and intY>0 Then

14.

MoveTo intX,intY

15.

MessageBox "找到图形,鼠标已经移到图形上面"

16.

Else

17.

MessageBox "没找到!请确认扫雷程序已经打开,并且您用的是WinXP系统"

18.

End If

19.

//在区域(0,50,1023,767)中找与文件中的图形比较接近的地方,如果找到,则把鼠标移动到这个地方

20.

//6.30版之后,找图的文件路径可以直接引用附件中的图片,不需要释放,例子

21.

MessageBox "下面把鼠标先移到0,0点,再用附件找图的方式继续查找笑脸"

22.

FindPic 0,50,1023,767,"Attachment:",0.9,intX,intY

23.

If intX>0 and intY>0 Then

24.

MoveTo intX,intY

25.

MessageBox "找到图形,鼠标已经移到图形上面"

26.

Else

27.

MessageBox "没找到!请确认扫雷程序已经打开,并且您用的是WinXP系统"

28.

End If

29.

MessageBox "脚本演示结束,最好的脚本永远是您自己制作的。 :)"

30.

EndScript

//FindPic left,top,right,bottom,filename,similar,x,y//在区域内从左到右,从上到下找文件名为filename的bmp文件,把找到的坐标保存在变量x和y中//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,下界限//filename是一个bmp格式的图片,需要您自己抓取,最好是24位,把边缘都设为单一的颜色//similar为相似度,取0.5到1之间的小数。数值越大,对图片的相似度要求越严格,速度也越快。推荐取0.9//如果没有找到图片,则x和y的值都被置为1//推荐使用周围颜色单一的图片MessageBox "这个例子会启动一个Windows自带的扫雷程序,然后查找扫雷程序里的笑脸图形"RunApp ""//加入一点延时,让扫雷程序顺利启动Delay 2000FindPic

0,50,1023,767,"",0.9,intX,intYIf intX>0 and intY>0 Then MoveTo

intX,intY MessageBox "找到图形,鼠标已经移到图形上面"Else MessageBox "没找到!请确认扫雷程序已经打开,并且您用的是WinXP系统"End If //在区域(0,50,1023,767)中找与文件中的图形比较接近的地方,如果找到,则把欧阳数创编

欧阳数创编

鼠标移动到这个地方//6.30版之后,找图的文件路径可以直接引用附件中的图片,不需要释放,例子MessageBox "下面把鼠标先移到0,0点,再用附件找图的方式继续查找笑脸"FindPic 0,50,1023,767,"Attachment:",0.9,intX,intYIf

intX>0 and intY>0 Then MoveTo intX,intY MessageBox "找到图形,鼠标已经移到图形上面"Else MessageBox "没找到!请确认扫雷程序已经打开,并且您用的是WinXP系统"End If MessageBox "脚本演示结束,最好的脚本永远是您自己制作的。 :)"EndScript

脚本复制代码

1.

//VBSCall FindPic(left,top,right,bottom,filename,similar,x,y)

例2.

//在区域内从左到右,从上到下找文件名为filename的bmp文件,把找到的坐标保存在变量x和y中

子:

3.

//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,(7.x下界限

4.

//filename是一个bmp格式的图片,需要您自己抓取,最好是24位,把边缘语都设为单一的颜色

5.

//similar为相似度,取0.5到1之间的小数。数值越大,对图片的相似度要法)

求越严格,速度也越快。推荐取0.9

6.

//如果没有找到图片,则x和y的值都被置为1

7.

//推荐使用周围颜色单一的图片

8.

MessageBox "这个例子会启动一个Windows自带的扫雷程序,然后查找扫雷程序里的笑脸图形"

9.

VBSCall RunApp("")

10.

//加入一点延时,让扫雷程序顺利启动

11.

Delay 2000

12.

VBSCall FindPic(0,50,1023,767,"",0.9,intX,intY)

13.

If intX>0 and intY>0

14.

MoveTo intX,intY

15.

MessageBox "找到图形,鼠标已经移到图形上面"

16.

Else

17.

MessageBox "没找到!请确认扫雷程序已经打开,并且您用的是WinXP系统"

18.

EndIf

19.

//在区域(0,50,1023,767)中找与文件中的图形比较接近的地方,如果找到,则把鼠标移动到这个地方

20.

//6.30版之后,找图的文件路径可以直接引用附件中的图片,不需要释放,例子

21.

MessageBox "下面把鼠标先移到0,0点,再用附件找图的方式继续查找笑脸"

22.

VBSCall FindPic(0,50,1023,767,"Attachment:",0.9,intX,intY)

23.

If intX>0 and intY>0

24.

MoveTo intX,intY

25.

MessageBox "找到图形,鼠标已经移到图形上面"

26.

Else

27.

MessageBox "没找到!请确认扫雷程序已经打开,并且您用的是WinXP系统"

28.

EndIf

欧阳数创编

欧阳数创编

29.

MessageBox "脚本演示结束,最好的脚本永远是您自己制作的。 :)"

30.

EndScript

//VBSCall FindPic(left,top,right,bottom,filename,similar,x,y)//在区域内从左到右,从上到下找文件名为filename的bmp文件,把找到的坐标保存在变量x和y中//left,top,right,bottom都是整数或者整数型变量,说明了区域的左,上,右,下界限//filename是一个bmp格式的图片,需要您自己抓取,最好是24位,把边缘都设为单一的颜色//similar为相似度,取0.5到1之间的小数。数值越大,对图片的相似度要求越严格,速度也越快。推荐取0.9//如果没有找到图片,则x和y的值都被置为1//推荐使用周围颜色单一的图片MessageBox "这个例子会启动一个Windows自带的扫雷程序,然后查找扫雷程序里的笑脸图形"VBSCall RunApp("")//加入一点延时,让扫雷程序顺利启动Delay 2000VBSCall

FindPic(0,50,1023,767,"",0.9,intX,intY)If intX>0 and intY>0 MoveTo

intX,intY MessageBox "找到图形,鼠标已经移到图形上面"Else MessageBox "没找到!请确认扫雷程序已经打开,并且您用的是WinXP系统"EndIf //在区域(0,50,1023,767)中找与文件中的图形比较接近的地方,如果找到,则把鼠标移动到这个地方//6.30版之后,找图的文件路径可以直接引用附件中的图片,不需要释放,例子MessageBox "下面把鼠标先移到0,0点,再用附件找图的方式继续查找笑脸"VBSCall

FindPic(0,50,1023,767,"Attachment:",0.9,intX,intY)If intX>0 and intY>0

MoveTo intX,intY MessageBox "找到图形,鼠标已经移到图形上面"Else

MessageBox "没找到!请确认扫雷程序已经打开,并且您用的是WinXP系统"EndIf

MessageBox "脚本演示结束,最好的脚本永远是您自己制作的。 :)"EndScript

命令名称:

命令功能:

命令参数1 整数型,屏幕X坐标

参参数2 整数型,屏幕Y坐标

数:

得到指定位置的点的颜色

GetPixelColor 得到指定点颜色

欧阳数创编

欧阳数创编

值:

脚本复制代码

1.

GetCursorPos x,y

例2.

cr1=GetPixelColor(x,y)

子:

3.

MessageBox cr1

4.

//得到当前点的颜色,并弹出对话框显示出来

(rsorPos x,ycr1=GetPixelColor(x,y)MessageBox cr1 //得到当前点的颜色,并弹出语对话框显示出来

法)

脚本复制代码

1.

VBSCall GetCursorPos(x,y)

例2.

VBSCall color1=GetPixelColor(x,y)

子:

3.

MessageBox color1

4.

//得到当前点的颜色,并弹出对话框显示出来

(ll GetCursorPos(x,y)VBSCall color1=GetPixelColor(x,y)MessageBox color1 //得语到当前点的颜色,并弹出对话框显示出来

法)

五、其他命令

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

Delay 延时

脚本暂停执行一段时间

参数1 整数型,延时时间

复制代码

1.

//{延时}里面填写”毫秒”数

2.

//1秒=1000毫秒, 1分钟=60000毫秒, 1小时=3600000毫秒

3.

Delay 6000

4.

//延迟6秒

5.

x = 5000

6.

Delay x

7.

//延时x秒,这里x是5秒

//{延时}里面填写”毫秒”数//1秒=1000毫秒, 1分钟=60000毫秒, 1小时=3600000毫秒Delay 6000 //延迟6秒 x = 5000 Delay x //延时x秒,这里x是5秒

脚本例子: 复制代码

1.

//{延时}里面填写”毫秒”数

字符串型,得到的颜色16进制值

欧阳数创编

欧阳数创编

2.

//1秒=1000毫秒, 1分钟=60000毫秒, 1小时=3600000毫3.

4.

5.

6.

7.

(7.x语法)

Delay 6000

//延迟6秒

x = 5000

Delay x

//延时x秒,这里x是5秒

//{延时}里面填写”毫秒”数//1秒=1000毫秒, 1分钟=60000毫秒, 1小时=3600000毫秒Delay 6000 //延迟6秒 x = 5000 Delay x //延时x秒,这里x是5秒

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

Import 导入命令

导入一个vbs文件或者插件dll文件

参数1 字符串型,vbs文件或插件dll文件

复制代码

1.

//当文件被导入后,里面的函数可以直接被调用,不需要使用VBSCall或Plugin命令

2.

//在VBScript块中需要调用vbs文件或者插件中的函数时,必须采用这种方式,不能再冠以VBSCall或Plugin关键字

3.

Import ""

4.

//导入Memory插件命令

//当文件被导入后,里面的函数可以直接被调用,不需要使用VBSCall或Plugin命令//在VBScript块中需要调用vbs文件或者插件中的函数时,必须采用这种方式,不能再冠以VBSCall或Plugin关键字Import ""//导入Memory插件命令

脚本例子:

(7.x语法)

复制代码

1.

//当文件被导入后,里面的函数可以直接被调用,不需要使用VBSCall或Plugin命令

2.

//在VBScript块中需要调用vbs文件或者插件中的函数时,必须采用这种方式,不能再冠以VBSCall或Plugin关键字

3.

Import

4.

//导入Memory插件命令

//当文件被导入后,里面的函数可以直接被调用,不需要使用VBSCall或Plugin命令//在VBScript块中需要调用vbs文件或者插件中的函数时,必须采用这种方式,不能再冠以VBSCall或Plugin关键字Import //导入Memory插件命令

命令名称:

InputBox 用户输入对话框

欧阳数创编

欧阳数创编

在对话框中显示提示,等待用户输入文本或单击按钮,并返回文本命令功能:

框内容。

命令参数:

参数1 字符串型,消息字符串

参数2 字符串型[可选],标题

参数3 字符串型[可选],提示框默认内容

参数4 整数型[可选],对话框X坐标位置

参数5 整数型[可选],对话框Y坐标位置

返 回 值:

脚本例子:

(8.x语法)

字符串型,返回文本框内容

复制代码

1.

Dim Input

2.

Input = InputBox("请输入名字:","提示:","张三",0,0)

3.

MsgBox "输入: " & Input

4.

5.

6.

//[可选]意思是,也可以不需要填参数

7.

//如下:

8.

Dim Input

9.

Input = InputBox("请输入名字:")

10.

MsgBox "输入: " & Input

Dim InputInput = InputBox("请输入名字:","提示:","张三",0,0) MsgBox

"输入: " & Input//[可选]意思是,也可以不需要填参数//如下:Dim

InputInput = InputBox("请输入名字:") MsgBox "输入: " & Input

脚本例子:

(7.x语法)

复制代码

1.

Dim Input

2.

Input = InputBox("请输入名字:","提示:","张三",0,0)

3.

MsgBox "输入: " & Input

4.

5.

6.

//[可选]意思是,也可以不需要填参数

7.

//如下:

8.

Dim Input

9.

Input = InputBox("请输入名字:")

10.

MsgBox "输入: " & Input

Dim InputInput = InputBox("请输入名字:","提示:","张三",0,0) MsgBox

"输入: " & Input//[可选]意思是,也可以不需要填参数//如下:Dim

InputInput = InputBox("请输入名字:") MsgBox "输入: " & Input

命令名称:

命令功能:

LogStart 开始记录日志

记录日志

欧阳数创编

欧阳数创编

命令参数:

返 回 值:

脚本例子:

(8.x语法)

字符串型:文件名

复制代码

1.

LogStart "C:" //记录日志

2.

For i = 0 To 3

3.

TracePrint "保存次数:" & i

4.

Call rTXT(0, 0, 1024, 768, "屏幕内容填写:" & i, "0000FF")

5.

Next

6.

LogStop //记录日志停止

7.

TracePrint "这句不会输出到日志里!"

LogStart "C:" //记录日志For i = 0 To 3 TracePrint "保存次数:"

& i Call rTXT(0, 0, 1024, 768, "屏幕内容填写:"

& i, "0000FF")NextLogStop //记录日志停止TracePrint "这句不会输出到日志里!"

脚本例子:

(7.x语法)

复制代码

1.

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

LogStop 停止日志记录

停止日志记录

复制代码

1.

LogStart "C:" //记录日志

2.

For i = 0 To 3

3.

TracePrint "保存次数:" & i

4.

Call rTXT(0, 0, 1024, 768, "屏幕内容填写:" & i, "0000FF")

5.

Next

6.

LogStop //记录日志停止

7.

TracePrint "这句不会输出到日志里!"

LogStart "C:" //记录日志For i = 0 To 3 TracePrint "保存次数:"

& i Call rTXT(0, 0, 1024, 768, "屏幕内容填写:"

& i, "0000FF")NextLogStop //记录日志停止TracePrint "这句不会输出到日志里!"

脚本例子: 复制代码

1.

欧阳数创编

欧阳数创编

(7.x语法)

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

MessageBox 弹出对话框

弹出一个窗口

参数1 字符串型,提示内容文字

复制代码

1.

MessageBox "弹出窗口"

2.

//提醒: 按键VBS语句中也提供了MessageBox命令,可以支持变量,因此MessageBox命令也可以直接写成支持变量的方式

3.

x = "提醒窗口"

4.

MessageBox x

MessageBox "弹出窗口" //提醒: 按键VBS语句中也提供了MessageBox命令,可以支持变量,因此MessageBox命令也可以直接写成支持变量的方式x = "提醒窗口" MessageBox x

脚本例子:

(7.x语法)

复制代码

1.

MessageBox "弹出窗口"

2.

//提醒: 按键VBS语句中也提供了MessageBox命令,可以支持变量,因此MessageBox命令也可以直接写成支持变量的方式

3.

x = "提醒窗口"

4.

MessageBox x

MessageBox "弹出窗口" //提醒: 按键VBS语句中也提供了MessageBox命令,可以支持变量,因此MessageBox命令也可以直接写成支持变量的方式x = "提醒窗口" MessageBox x

命令名称:

命令功能:

命令参数:

PutAttachment 释放附件

把当前脚本包含的附件展开到指定的路径下

参数1 字符串型,可选:路径

参数2 字符串型,可选:要释放的文件

返 回 值:

脚本例子:

(8.x语法)

复制代码

1.

//[路径]是指定的相对路径或者绝对路径。

2.

//如果省略[路径]或者[路径]为 . ,则默认展开到按键精灵所在的文件夹中

3.

//可以指定要释放的文件,允许使用通配符,如 *.bmp。如果不指定要释放的文件,则默认释放所有文件

欧阳数创编

欧阳数创编

4.

5.

6.

7.

PutAttachment "c:","*.bmp"

//将附件中所有后缀是bmp的文件释放到c盘

PutAttachment ".plugin","*.dll"

//将附件中所有后缀是dll的文件释放到当前文件夹的plugin目录下

//[路径]是指定的相对路径或者绝对路径。//如果省略[路径]或者[路径]为 . ,则默认展开到按键精灵所在的文件夹中//可以指定要释放的文件,允许使用通配符,如 *.bmp。如果不指定要释放的文件,则默认释放所有文件PutAttachment "c:","*.bmp"//将附件中所有后缀是bmp的文件释放到c盘PutAttachment ".plugin","*.dll"//将附件中所有后缀是dll的文件释放到当前文件夹的plugin目录下

脚本例子:

(7.x语法)

复制代码

1.

//[路径]是指定的相对路径或者绝对路径。

2.

//如果省略[路径]或者[路径]为 . ,则默认展开到按键精灵所在的文件夹中

3.

//可以指定要释放的文件,允许使用通配符,如 *.bmp。如果不指定要释放的文件,则默认释放所有文件

4.

PutAttachment c: *.bmp

5.

//将附件中所有后缀是bmp的文件释放到c盘

6.

PutAttachment .plugin *.dll

7.

//将附件中所有后缀是dll的文件释放到当前文件夹的plugin目录下

//[路径]是指定的相对路径或者绝对路径。//如果省略[路径]或者[路径]为 . ,则默认展开到按键精灵所在的文件夹中//可以指定要释放的文件,允许使用通配符,如 *.bmp。如果不指定要释放的文件,则默认释放所有文件PutAttachment c: *.bmp//将附件中所有后缀是bmp的文件释放到c盘PutAttachment .plugin *.dll//将附件中所有后缀是dll的文件释放到当前文件夹的plugin目录下

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

RunApp 运行

启动一个程序或者打开一个文件

参数1 字符串型,要运行的程序或者文件

复制代码

1.

//如果程序路径不是变量,别忘了加双引号

2.

RunApp ""

3.

//启动Windows记事本程序

//如果程序路径不是变量,别忘了加双引号RunApp "" //欧阳数创编

欧阳数创编

启动Windows记事本程序

脚本例子:

(7.x语法)

复制代码

1.

//如果程序路径不是变量,别忘了加双引号

2.

VBSCall RunApp("")

3.

//启动Windows记事本程序

//如果程序路径不是变量,别忘了加双引号VBSCall

RunApp("") //启动Windows记事本程序

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

SayString 输入文本

在当前窗口输入文字

参数1 字符串型,表达式

复制代码

1.

SayString "你好啊"

2.

x = "我很好"

3.

SayString x

SayString "你好啊"x = "我很好" SayString x

脚本例子:

(7.x语法)

复制代码

1.

SayString "你好啊"

2.

x = "我很好"

3.

SayString x

SetSimMode 设置模拟方式

设置模拟方式

参数1 整数型,设置模拟方式

复制代码

1.

//模拟方式(0普通|1硬件|2超级)

2.

MessageBox "这个例子会演示 普通/硬件/超级 这三种模拟方式的效果,点击确定后3秒钟开始模拟,会用普通模拟按3下a,硬件模拟按3下b,超级模拟按3下c"

3.

Delay 3000

4.

SetSimMode 0

5.

KeyPress 65,3

6.

MoveTo 0,0

7.

Delay 1000

8.

SetSimMode 1

9.

KeyPress 66,3

10.

MoveTo 100,100

11.

Delay 1000

12.

SetSimMode 2

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

欧阳数创编

欧阳数创编

13.

KeyPress 67,3

14.

MoveTo 200,200

15.

MessageBox "演示结束"

//模拟方式(0普通|1硬件|2超级)MessageBox "这个例子会演示 普通/硬件/超级 这三种模拟方式的效果,点击确定后3秒钟开始模拟,会用普通模拟按3下a,硬件模拟按3下b,超级模拟按3下c"Delay

3000SetSimMode 0KeyPress 65,3MoveTo 0,0Delay 1000SetSimMode

1KeyPress 66,3MoveTo 100,100Delay 1000SetSimMode 2KeyPress

67,3MoveTo 200,200MessageBox "演示结束"

脚本例子:

(7.x语法)

复制代码

1.

//模拟方式(0普通|1硬件|2超级)

2.

MessageBox "这个例子会演示 普通/硬件/超级 这三种模拟方式的效果,点击确定后3秒钟开始模拟,会用普通模拟按3下a,硬件模拟按3下b,超级模拟按3下c"

3.

Delay 3000

4.

SetSimMode 0

5.

KeyPress 65,3

6.

MoveTo 0,0

7.

Delay 1000

8.

SetSimMode 1

9.

KeyPress 66,3

10.

MoveTo 100,100

11.

Delay 1000

12.

SetSimMode 2

13.

KeyPress 67,3

14.

MoveTo 200,200

15.

MessageBox "演示结束"

16.

//模拟方式(0普通|1硬件|2超级)MessageBox "这个例子会演示 普通/硬件/超级 这三种模拟方式的效果,点击确定后3秒钟开始模拟,会用普通模拟按3下a,硬件模拟按3下b,超级模拟按3下c"Delay

3000SetSimMode 0KeyPress 65,3MoveTo 0,0Delay 1000SetSimMode

1KeyPress 66,3MoveTo 100,100Delay 1000SetSimMode 2KeyPress

67,3MoveTo 200,200MessageBox "演示结束"

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

TracePrint 调试输出

在调试窗口打印文字

参数1 字符串型,变量名

复制代码

欧阳数创编

欧阳数创编

1.

2.

3.

4.

(8.x语法)

x=100

//可用于输出变量的值

TracePrint x

//在调试窗口输出变量x的值

x=100//可用于输出变量的值TracePrint x//在调试窗口输出变量x的值

脚本例子:

(7.x语法)

复制代码

1.

//可用于输出变量的值

2.

TracePrint x

3.

//在调试窗口输出变量x的值

//可用于输出变量的值TracePrint x//在调试窗口输出变量x的值

命令名称:

命令功能:

命令参数:

UserVar 用户定义变量

用于支持用户设置脚本参数

参数1 字符串型,变量

参数2 字符串型,默认值

返 回 值:

脚本例子:

(8.x语法)

字符串型,设置的值

复制代码

1.

//标准型自定义变量

2.

//格式: UserVar {变量}={默认值} {注释}

3.

//解释:这个命令主要用于用户自定义的设置功能

4.

UserVar var1=30 "当HP<多少%时,使用红药"

5.

UserVar var2=30 "当MP<多少%时,使用蓝药"

6.

//当用户使用这个脚本的时候,可以对这var1和var2这两个变量的取值进行设置

7.

//下拉型自定义变量

8.

//格式: UserVar 变量=DropList{选项0:值0|选项1:值1|选项2:值2}=默认显示的选项编号 {注释}

9.

//解释:这个命令预先设定多个变量值,用户可在基面通过下拉方式进行选择

10.

UserVar Var1=DropList{"低于10%时补血":0.1|"低于20%时补血":0.2|"低于30%时补血":0.3}=2 "自动补血设置"

11.

//特别提醒:默认显示的选项编号从0开始

//标准型自定义变量//格式: UserVar {变量}={默认值} {注释}//解释:这个命令主要用于用户自定义的设置功能UserVar var1=30 "当HP<多少%时,使用红药"UserVar var2=30 "当MP<多少%时,使用蓝药"//当用户使用这个脚本的时候,可以对这var1和var2这两个变量的取值进行设置//下拉型自定义变量//格式: UserVar 变量=DropList{选项0:值0|选项1:值1|选项2:值2}=默认显示的选项编号 {注释}//解释:这个命令预先设定多个变量值,用户可在基面通过下拉方式进行选择欧阳数创编

欧阳数创编

UserVar Var1=DropList{"低于10%时补血":0.1|"低于20%时补血":0.2|"低于30%时补血":0.3}=2 "自动补血设置"//特别提醒:默认显示的选项编号从0开始

脚本例子:

(7.x语法)

复制代码

1.

//标准型自定义变量

2.

//格式: UserVar {变量}={默认值} {注释}

3.

//解释:这个命令主要用于用户自定义的设置功能

4.

UserVar var1=30 当HP<多少%时,使用红药

5.

UserVar var2=30 当MP<多少%时,使用蓝药

6.

//当用户使用这个脚本的时候,可以对这var1和var2这两个变量的取值进行设置

7.

//下拉型自定义变量

8.

//格式: UserVar 变量=DropList{选项0:值0|选项1:值1|选项2:值2}=默认显示的选项编号 {注释}

9.

//解释:这个命令预先设定多个变量值,用户可在基面通过下拉方式进行选择

10.

UserVar Var1=DropList{低于10%时补血:0.1|低于20%时补血:0.2|低于30%时补血:0.3}=2 自动补血设置

11.

//特别提醒:默认显示的选项编号从0开始

//标准型自定义变量//格式: UserVar {变量}={默认值} {注释}//解释:这个命令主要用于用户自定义的设置功能UserVar var1=30 当HP<多少%时,使用红药UserVar var2=30 当MP<多少%时,使用蓝药//当用户使用这个脚本的时候,可以对这var1和var2这两个变量的取值进行设置//下拉型自定义变量//格式: UserVar 变量=DropList{选项0:值0|选项1:值1|选项2:值2}=默认显示的选项编号 {注释}//解释:这个命令预先设定多个变量值,用户可在基面通过下拉方式进行选择UserVar Var1=DropList{低于10%时补血:0.1|低于20%时补血:0.2|低于30%时补血:0.3}=2 自动补血设置//特别提醒:默认显示的选项编号从0开始

命令名称:

命令功能:

命令参数:

返 回 值:

脚本例子:

(8.x语法)

VBSBegin..VBSEnd VBS执行块

构成一个VBScript块

复制代码

1.

VBSBegin

2.

For i=0 to 5

3.

Msgbox "我在循环运行VBScript块哦!!"

欧阳数创编

欧阳数创编

'这是注释

Next

VBSEnd

//在VBScript块中可以使用任何VBScript语句(包括VBScript的条件判断、子程序调用等等),也可以使用大多数的按键精灵命令。

8.

例子2:

9.

//定义过程必须放在脚本开头!

10.

VBSBegin

11.

'这是一个注释

12.

Function name(list)

13.

msgbox list+1

14.

End Function

15.

VBSEnd

16.

//下面是使用过程函数

17.

name 10

18.

4.

5.

6.

7.

VBSBegin For i=0 to 5 Msgbox "我在循环运行VBScript块哦!!"

'这是注释 NextVBSEnd//在VBScript块中可以使用任何VBScript语句(包括VBScript的条件判断、子程序调用等等),也可以使用大多数的按键精灵命令。例子2://定义过程必须放在脚本开头!VBSBegin '这是一个注释 Function name(list) msgbox list+1

End FunctionVBSEnd //下面是使用过程函数name 10

脚本例子:

(7.x语法)

复制代码

1.

VBSBegin

2.

For i=0 to 5

3.

Msgbox "我在循环运行VBScript块哦!!"

4.

'这是注释

5.

Next

6.

VBSEnd

7.

//在VBScript块中可以使用任何VBScript语句(包括VBScript的条件判断、子程序调用等等),也可以使用大多数的按键精灵命令。

8.

例子2:

9.

//定义过程必须放在脚本开头!

10.

VBSBegin

11.

'这是一个注释

12.

Function name(list)

13.

msgbox list+1

14.

End Function

15.

VBSEnd

16.

//下面是使用过程函数

17.

name 10

18.

Windowns扫雷游戏脚本实例:

Rem Start

LockMouse

欧阳数创编

欧阳数创编

//查找扫雷窗口,句柄存为hd

Plugin hd=("扫雷","扫雷")

If hd=0

MessageBox "你应该没有打开扫雷游戏吧?"

Else

//获得窗口四个角的坐标

Plugin WRect=dowRect(hd)

VBS Dim x(4)

VBS i=1

While i<=4

VBS WL=Len(WRect)

VBS LL=InStr(WRect,"|")

If LL<>0

VBS x(i)=left(WRect,LL1)

VBS WRect=right(WRect,WlLL)

Else

VBS x(i)=WRect

EndIf

VBS i=i+1

EndWhile

VBS Dim hg,sg

//计算横格数

VBS hg=int((x(3)x(1)20)/16)

//计算竖格数

VBS sg=Int((x(4)x(2)100)/16)

MoveTo x(3)+1,x(4)+1

LeftClick 1

Delay 10

Plugin yPress(hd,88)

Delay 10

Plugin yPress(hd,89)

Delay 10

Plugin yPress(hd,90)

Delay 10

Plugin yPress(hd,90)

Delay 10

Plugin yPress(hd,89)

Delay 10

Plugin yPress(hd,16)

Delay 10

Plugin (hd)

//雷区最左上角一格的坐标

VBS x0=x(1)+21:y0=x(2)+100

VBS i=0

欧阳数创编

欧阳数创编

//用鼠标扫描整个雷区

While i

VBS j=0

While j

MoveTo x0+j*16,y0+i*16

Delay 5

IfColor 0,0,ffffff,0

LeftClick 1

Else

IfColor 0,0,0,0

Else

KeyPress 116,1

Goto Start

EndIf

EndIf

VBS j=j+1

EndWhile

VBS i=i+1

EndWhile

EndIf

UnlockMouse

EndScript

按键插件《扫雷》系列一【读取内存】

内存读取插件,用于读取某窗体句柄所在进程内存。与按键精灵本身提供的“VBSCall ReadMemory()”功能几乎相同。

不同点在于:

1、VBSCall ReadMemory()读取最前台窗口内存。Plugin ()读取某窗体的内存。

2、Memory插件,提供更多更丰富的功能。

在给出Memory插件例子之前,先说说windows如何管理进程内存的,知其然要知其所以然,避免概念上的错误理解。

在说内存之前,我们要知道windows是多进程的操作系统,CPU时间片根据进程优先级的不同在各个进程中切换,从而实现了多进程的管理机制。要详细解释“进程内存”的关系比较复杂,一两篇文章也说不清楚。这里我就简要说明几个与本文有关联的系统知识。

绝大多数学过计算机编程的同学,应该都清楚,在编写程序的时候,根本就没有多进程的概念,也不会向这方面想。但一到涉及到内存的时候就会犯迷糊,windows这么多进程,到底应该读取哪个地方的内存呢?其实不是这样的,windows只是模拟出多进程的环境,实际的运算都在CPU上完成,而一个CPU在一个时间只能处理一条指令,也就是说,对于cpu而言,只是单进程操作(请允许我提到CPU、指令这些与汇编有关系的内容,我想不到如何能把这个概念简单的描述出来,这些是概念,看懂意思就没问题了)。windows模拟多进程的操作,大概是这样的:把进程A送到CPU中处理20微秒>保存进程A环境>进程B送到CPU中处理20微秒>保存进程B环境……一直循环这个过程。CPU的速度很快,系统在多进欧阳数创编

欧阳数创编

程切换,我们基本上感觉不到。所以实现了“多进程”。

现在轮到内存了:_)

内存这里是个比较卡人的地方,当初我也卡在这里过,其实当初也是因为概念不明而已,我在这里详细说说。windows有一套自己的内存管理方案,每个进程都独享独立的4G虚拟地址空间(注意这里,是虚拟地址内存,非物理内存,当初我就卡在这里了)。这个4G,在每个进程中都是真实存在的,但因为是虚拟内存(注意这里,这里所说的虚拟内存和调节windows的虚拟内存不是一个东西),程序用到的内存部分,加载到物理内存,供给cpu读取,用不到的,依然还是硬盘上的文件。所以实际的物理内存占用并不高。明白这个概念,之后的东西就好办了。我们在读取内存的时候,读出来的都在虚拟里,windows是不允许用户直接操作物理内存的(这里涉及到ring0/3环的问题,与本文无关,略过,只要记住,我们不要考虑物理内存就可以了)。举个例子,我们读取进程A中的50000地址,再读取进程B中的50000地址,读的地址,完全不同,因为他们放到两快虚拟内存中。至于它到底在物理内存中哪个位置,只有windows知道(其实对程序员来说,也没有必要知道)。

我反复强调了“进程内存”,是因为我当初卡在这里过,如果看到这里,你还是云里雾里,那么建议你回头再看一遍。

讲完了概念,进入正题:

我们要做的,正是读取windows自带的经典游戏《扫雷》中的“雷”所在的位置,旨在用代码描述内存插件的使用方法。我始终坚信,代码是最好的老师,比任何教程都强。所以我直接给出注释全面的代码,以供分析。

//**********************************

//* 以下例子只支持xp操作系统中扫雷 *

//**********************************

//

//hwnd中保存扫雷游戏的窗体句柄

Dim hwnd

//查找《扫雷》的窗体句柄

Plugin hwnd=("扫雷","扫雷")

If hwnd=0

MessageBox "扫雷游戏没有打开哟!"

EndScript

EndIf

//x, y中分别保存当前扫雷的长与宽的格子数量

Dim x, y

Plugin x=32Bit(hwnd,&h1005334)

Plugin y=32Bit(hwnd,&h1005338)

//建个双重循环,循环所有格子,这里用VBScript的循环会很方便,所以加入vbsbegin块

Import

VBSBegin

Dim i, j, value, strview

strview="说明:@代表安全,*代表雷" & vbcrlf

For i=0 to x1

欧阳数创编

欧阳数创编

For j=0 to y1

value=8Bit(hwnd,&h1005360+(j+i*32+1))

'注意:VBSBegin中的注释是“'”

'//8A=显示出的雷

'//8F=未显示出的雷

If value=&h8A& or value=&h8F& then

strview=strview & " *"

Else

strview=strview & " @"

End If

Next

strview=strview & vbcrlf

Next

MessageBox strview

VBSEnd

相信大家都可以通过插件的函数名称判断函数的作用,以上代码很简单,我不做过多讲解了哈

下部分,轮到windows插件,我会详细讲解“窗体位置”的概念

按键插件《扫雷》系列二【窗口位置】

按照惯例,首先介绍下“窗口坐标系”、“窗口工作区”和“窗口客户区”的概念,最后给出自动扫雷脚本。

“窗口坐标系”是我自创的描述词,术语叫什么我还真不清楚。这个概念很容易理解,我们都知道桌面分辨率,分辨率越高,显示的

桌面内容就越多。我们也知道,窗口是“摆放”在桌面上的,甚至可以超出桌面范围(比如随意把一个窗口拖到桌面之外)。而窗口坐标系就

是窗口摆放在桌面的位置。假设桌面是1024×768,那么桌面左上角坐标就是0,0。桌面右下角坐标就是1023×767(因为是从0开始)。这样,

窗口所在桌面的坐标就是“窗口坐标系”了。

“窗体工作区”和“窗体客户区”,这两个词从字面上很难理解,微软的官方文档就是这么叫的。我用一张图来表示工作区和客户区

有什么不同。

从上图可以看出,工作区包含了窗体的四条边框,上面的边框最宽,叫做标题栏,其他的边框只有窄窄的一条。为什么要区分工作区

和客户区呢?大家会议下XP系统默认的标题栏高度和98/2000系统默认的标题栏高度就明白了。也就是说,我们编写按键脚本的时候,直接从客

户区入手,这样就不用考虑标题栏高度和四条窗体边框的问题了。

下面的脚本例子,建议大家输出看看结果,对理解工作区和客户区有帮助:

//**************************

//*窗体工作区 与 窗体客户区*

//**************************

//

//启动扫雷

VBSCall RunApp("")

欧阳数创编

本文标签: 鼠标脚本命令