AddDict
函数简介:
给指定的字库中添加一条字库信息
函数原型:
long AddDict(index,dict_info)
参数定义:
index 整形数:字库的序号,取值为0-9,目前最多支持10个字库
dict_info 字符串:字库描述串,具体参考大漠综合工具中的字符定义
返回值:
整形数:
0:失败
1:成功
示例:
dm_ret = dm.AddDict(0,"081101BF8020089FD10A21443F85038$记$0.0$11")
注意: 此函数尽量在小字库中使用,大字库中使用AddDict速度比较慢
ClearDict
函数简介:
清空指定的字库.
函数原型:
long ClearDict(index)
参数定义:
index 整形数:字库的序号,取值为0-9,目前最多支持10个字库
返回值:
整形数:
0:失败
1:成功
示例:
dm.ClearDict 0
注意: 此函数尽量在小字库中使用,大字库中使用AddDict速度比较慢
FetchWord(
函数简介:
根据指定的范围,以及指定的颜色描述,提取点阵信息,类似于大漠工具里的单独提取.
函数原型:
string FetchWord(x1, y1, x2, y2, color, word)
参数定义:
x1 整形数:左上角X坐标
y1 整形数:左上角Y坐标
x2 整形数:右下角X坐标
y2 整形数:右下角Y坐标
color 字符串: 颜色格式串
word 字符串: 待定义的文字,不能为空,且不能为关键符号"$"
返回值:
字符串:
识别到的点阵信息,可用于AddDict
如果失败,返回空
示例:
info = dm.FetchWord(200,200,250,220,"abcdef-101010|ffffff-101010","张三")
If len(info) > 0 Then
dm.AddDict 3,info
End if
info = dm.FetchWord(200,200,250,220,"b@abcdef-101010|ffffff-101010","李四")
If len(info) > 0 Then
dm.AddDict 2,info
End if
info = dm.FetchWord(200,200,250,220,"b@0.100.100-0.0.0","张三")
If len(info) > 0 Then
dm.AddDict 4,info
End if
info = dm.FetchWord(200,200,250,220,"0.100.100-0.0.0|100.0.0-0.0.0","王")
If len(info) > 0 Then
dm.AddDict 4,info
End if
FindStr
函数简介:
在屏幕范围(x1,y1,x2,y2)内,查找string(可以是任意个字符串的组合),并返回符合color_format的坐标位置,相似度sim同Ocr接口描述.
(多色,差色查找类似于Ocr接口,不再重述)
函数原型:
long FindStr(x1,y1,x2,y2,string,color_format,sim,intX,intY)
参数定义:
x1 整形数:区域的左上X坐标
y1 整形数:区域的左上Y坐标
x2 整形数:区域的右下X坐标
y2 整形数:区域的右下Y坐标
string 字符串:待查找的字符串,可以是字符串组合,比如"长安|洛阳|大雁塔",中间用"|"来分割字符串
color_format 字符串:颜色格式串
sim 双精度浮点数:相似度,取值范围0.1-1.0
intX 变参指针:返回X坐标 没找到返回-1
intY 变参指针:返回Y坐标 没找到返回-1
返回值:
整形数:
返回字符串的索引 没找到返回-1, 比如"长安|洛阳",若找到长安,则返回0
示例:
dm_ret = dm.FindStr(0,0,2000,200
0,"长安","9f2e3f-000000",1.0,intX,intY)
If intX >= 0 and intY >= 0 Then
dm.MoveTo intX,intY
End If
dm_ret = dm.FindStr(0,0,2000,2000,"长安|洛阳","9f2e3f-000000",1.0,intX,intY)
If intX >= 0 and intY >= 0 Then
dm.MoveTo intX,intY
End If
注: 此函数的原理是先Ocr识别,然后再查找。所以速度比FindStrFast要慢,尤其是在字库
很大,或者模糊度不为1.0时。
一般字库字符数量小于100左右,模糊度为1.0时,用FindStr要快一些,否则用FindStrFast.
FindStrE
函数简介:
在屏幕范围(x1,y1,x2,y2)内,查找string(可以是任意个字符串的组合),并返回符合color_format的坐标位置,相似度sim同Ocr接口描述.
(多色,差色查找类似于Ocr接口,不再重述)
易语言用不了FindStr可以用此接口来代替
函数原型:
string FindStrE(x1,y1,x2,y2,string,color_format,sim)
参数定义:
x1 整形数:区域的左上X坐标
y1 整形数:区域的左上Y坐标
x2 整形数:区域的右下X坐标
y2 整形数:区域的右下Y坐标
string 字符串:待查找的字符串, 可以是字符串组合,比如"长安|洛阳|大雁塔",中间用"|"来分割字符串
color_format 字符串:颜色格式串
sim 双精度浮点数:相似度,取值范围0.1-1.0
返回值:
字符串:
返回字符串序号以及X和Y坐标,形式如"id|x|y", 比如"0|100|200",没找到时,id和X以及Y均为-1,"-1|-1|-1"
示例:
pos = dm.FindStrE(0,0,2000,2000,"长安","9f2e3f-000000",1.0)
pos = split(pos,"|")
If int(pos(0)) >= 0 Then
dm.MoveTo int(pos(1)),int(pos(2))
End If
pos = dm.FindStrE(0,0,2000,2000,"长安|洛阳","9f2e3f-000000",1.0)
pos = split(pos,"|")
If int(pos(0)) >= 0 Then
dm.MoveTo int(pos(1)),int(pos(2))
End If
注: 此函数的原理是先Ocr识别,然后再查找。所以速度比FindStrFastE要慢,尤其是在字库
很大,或者模糊度不为1.0时。
一般字库字符数量小于100左右,模糊度为1.0时,用FindStrE要快一些,否则用FindStrFastE.
FindStrEx
函数简介:
在屏幕范围(x1,y1,x2,y2)内,查找string(可以是任意字符串的组合),并返回符合color_format的所有坐标位置,相似度sim同Ocr接口描述.
(多色,差色查找类似于Ocr接口,不再重述)
函数原型:
string FindStrEx(x1,y1,x2,y2,string,color_format,sim)
参数定义:
x1 整形数:区域的左上X坐标
y1 整形数:区域的左上Y坐标
x2 整形数:区域的右下X坐标
y2 整形数:区域的右下Y坐标
string 字符串:待查找的字符串, 可以是字符串组合,比如"长安|洛阳|大雁塔",中间用"|"来分割字符串
color_format 字符串:颜色格式串
sim 双精度浮点数:相似度,取值范围0.1-1.0
返回值:
字符串:
返回所有找到的坐标集合,格式如下:
"id,x0,y0|id,x1,y1|......|id,xn,yn"
比如"0,100,20|2,30,40" 表示找到了两个,第一个,对应的是序号为0的字
符串,坐标是(100,20),第二个是序号为2的字符串,坐标(30,40)
示例:
dm_ret = dm.FindStrEx(0,0,2000,2000,"长安|洛阳","9f2e3f-000000",1.0)
If len(dm_ret) > 0 Then
ss = split(dm_ret,"|")
index = 0
count = UBound(ss) + 1
Do While index < count
TracePrint ss(index)
sss = split(ss(index),",")
id = int(sss(0))
x = int(sss(1))
y = int(sss(2))
dm.MoveTo x,y
Delay 1000
index = index+1
Loop
End If
注: 此函数的原理是先Ocr识别,然后再查找。所以速度比FindStrExFast要慢,尤其是在字库
很大,或者模糊度不为1.0时。
一般字库字符数量小于100左右,模糊度为1.0时,用FindStrEx要快一些,否则用FindStrFastEx.
FindStrExS
函数简介:
在屏幕范围(x1,y1,x2,y2)内,查找string(可以是任意字符串的组合),并返回符合color_format的所有坐标位置,相似度sim同Ocr接口描述.
(多色,差色查找类似于Ocr接口,不再重述). 此函数同FindStrEx,只是返回值不同. <收费功能,具体详情点击查看>
函数原型:
string FindStrExS(x1,y1,x2,y2,string,color_format,sim)
参数定义:
x1 整形数:区域的左上X坐标
y1 整形数:区域的左上Y坐标
x2 整形数:区域的右下X坐标
y2 整形数:区域的右下Y坐标
string 字符串:待查找的字符串, 可以是字符串组合,比如"长安|洛阳|大雁塔",中间用"|"来分割字符串
color_format 字符串:颜色格式串
sim 双精度浮点数:相似度,取值范围0.1-1.0
返回值:
字符串:
返回所有找到的坐标集合,格式如下:
"str,x0,y0| str,x1,y1|......| str,xn,yn"
比如"长安,100,20|大雁塔,30,40" 表示找到了两个,第一个是长安 ,坐标是(100,20),第二个是大雁塔,坐标(30,40)
示例:
dm_ret = dm.FindStrExS(0,0,2000,2000,"长安|洛阳","9f2e3f-000000",1.0)
If len(dm_ret) > 0 Then
ss = split(dm_ret,"|")
index = 0
count = UBound(ss) + 1
Do While index < count
TracePrint ss(index)
sss = split(ss(index),",")
str = sss(0)
x = int(sss(1))
y = int(sss(2))
dm.MoveTo x,y
Delay 1000
index = index+1
Loop
End If
注: 此函数的原理是先Ocr识别,然后再查找。所以速度比FindStrExFastS要慢,尤其是在字库
很大,或者模糊度不为1.0时。
一般字库字符数量小于100左右,模糊度为1.0时,用FindStrExS要快一些,否则用FindStrFastExS.
FindStrFast
函数简介:
同FindStr。
函数原型:
long FindStrFast(x1,y1,x2,y2,string,color_format,sim,intX,intY)
参数定义:
x1 整形数:区域的左上X坐标
y1 整形数:区域的左上Y坐标
x2 整形数:区域的右下X坐标
y2 整形数:区域的右下Y坐标
string 字符串:待查找的字符串,可以是字符串组合,比如"长安|洛阳|大雁塔",中间用"|"来分割字符串
color_format 字符串:颜色格式
串
sim 双精度浮点数:相似度,取值范围0.1-1.0
intX 变参指针:返回X坐标 没找到返回-1
intY 变参指针:返回Y坐标 没找到返回-1
返回值:
整形数:
返回字符串的索引 没找到返回-1, 比如"长安|洛阳",若找到长安,则返回0
示例:
dm_ret = dm.FindStrFast(0,0,2000,2000,"长安","9f2e3f-000000",1.0,intX,intY)
If intX >= 0 and intY >= 0 Then
dm.MoveTo intX,intY
End If
dm_ret = dm.FindStrFast(0,0,2000,2000,"长安|洛阳","9f2e3f-000000",0.9,intX,intY)
If intX >= 0 and intY >= 0 Then
dm.MoveTo intX,intY
End If
注: 此函数比FindStr要快很多,尤其是在字库很大时,或者模糊识别时,效果非常明显。
推荐使用此函数。
另外由于此函数是只识别待查找的字符,所以可能会有如下情况出现问题。
比如 字库中有"张和三" 一共3个字符数据,然后待识别区域里是"张和三",如果用FindStr查找
"张三"肯定是找不到的,但是用FindStrFast却可以找到,因为"和"这个字符没有列入查找计划中
所以,在使用此函数时,也要特别注意这一点。
FindStrFastE
函数简介:
同FindStrE
易语言用不了FindStrFast可以用此接口来代替
函数原型:
string FindStrFastE(x1,y1,x2,y2,string,color_format,sim)
参数定义:
x1 整形数:区域的左上X坐标
y1 整形数:区域的左上Y坐标
x2 整形数:区域的右下X坐标
y2 整形数:区域的右下Y坐标
string 字符串:待查找的字符串, 可以是字符串组合,比如"长安|洛阳|大雁塔",中间用"|"来分割字符串
color_format 字符串:颜色格式串
sim 双精度浮点数:相似度,取值范围0.1-1.0
返回值:
字符串:
返回字符串序号以及X和Y坐标,形式如"id|x|y", 比如"0|100|200",没找到时,id和X以及Y均为-1,"-1|-1|-1"
示例:
pos = dm.FindStrFastE(0,0,2000,2000,"长安","9f2e3f-000000",1.0)
pos = split(pos,"|")
If int(pos(0)) >= 0 Then
dm.MoveTo int(pos(1)),int(pos(2))
End If
pos = dm.FindStrFastE(0,0,2000,2000,"长安|洛阳","9f2e3f-000000",0.9)
pos = split(pos,"|")
If int(pos(0)) >= 0 Then
dm.MoveTo int(pos(1)),int(pos(2))
End If
注: 此函数比FindStrE要快很多,尤其是在字库很大时,或者模糊识别时,效果非常明显。
推荐使用此函数。
另外由于此函数是只识别待查找的字符,所以可能会有如下情况出现问题。
比如 字库中有"张和三" 一共3个字符数据,然后待识别区域里是"张和三",如果用FindStrE查找
"张三"肯定是找不到的,但是用FindStrFastE却可以找到,因为"和"这个字符没有列入查找计划中
所以,在使用此函数时,也要特别注意这一点。
FindStrFastEx
函数简介:
同FindStrEx
函数原型:
string FindStrFastEx(x1,y1,x2,y2,string,color_format,sim)
参数定义:
x1 整形数:区域的左上X坐标
y1
整形数:区域的左上Y坐标
x2 整形数:区域的右下X坐标
y2 整形数:区域的右下Y坐标
string 字符串:待查找的字符串, 可以是字符串组合,比如"长安|洛阳|大雁塔",中间用"|"来分割字符串
color_format 字符串:颜色格式串
sim 双精度浮点数:相似度,取值范围0.1-1.0
返回值:
字符串:
返回所有找到的坐标集合,格式如下:
"id,x0,y0|id,x1,y1|......|id,xn,yn"
比如"0,100,20|2,30,40" 表示找到了两个,第一个,对应的是序号为0的字符串,坐标是(100,20),第二个是序号为2的字符串,坐标(30,40)
示例:
dm_ret = dm.FindStrFastEx(0,0,2000,2000,"长安|洛阳","9f2e3f-000000",0.9)
If len(dm_ret) > 0 Then
ss = split(dm_ret,"|")
index = 0
count = UBound(ss) + 1
Do While index < count
TracePrint ss(index)
sss = split(ss(index),",")
id = int(sss(0))
x = int(sss(1))
y = int(sss(2))
dm.MoveTo x,y
Delay 1000
index = index+1
Loop
End If
注: 此函数比FindStrEx要快很多,尤其是在字库很大时,或者模糊识别时,效果非常明显。
推荐使用此函数。
另外由于此函数是只识别待查找的字符,所以可能会有如下情况出现问题。
比如 字库中有"张和三" 一共3个字符数据,然后待识别区域里是"张和三",如果用FindStrEx查找
"张三"肯定是找不到的,但是用FindStrFastEx却可以找到,因为"和"这个字符没有列入查找计划中
所以,在使用此函数时,也要特别注意这一点。
FindStrFastExS
函数简介:
同FindStrExS. <收费功能,具体详情点击查看>
函数原型:
string FindStrFastExS(x1,y1,x2,y2,string,color_format,sim)
参数定义:
x1 整形数:区域的左上X坐标
y1 整形数:区域的左上Y坐标
x2 整形数:区域的右下X坐标
y2 整形数:区域的右下Y坐标
string 字符串:待查找的字符串, 可以是字符串组合,比如"长安|洛阳|大雁塔",中间用"|"来分割字符串
color_format 字符串:颜色格式串
sim 双精度浮点数:相似度,取值范围0.1-1.0
返回值:
字符串:
返回所有找到的坐标集合,格式如下:
"str,x0,y0| str,x1,y1|......| str,xn,yn"
比如"长安,100,20|大雁塔,30,40" 表示找到了两个,第一个是长安 ,坐标是(100,20),第二个是大雁塔,坐标(30,40)
示例:
dm_ret = dm.FindStrFastExS(0,0,2000,2000,"长安|洛阳","9f2e3f-000000",0.9)
If len(dm_ret) > 0 Then
ss = split(dm_ret,"|")
index = 0
count = UBound(ss) + 1
Do While index < count
TracePrint ss(index)
sss = split(ss(index),",")
str = sss(0)
x = int(sss(1))
y = int(sss(2))
dm.MoveTo x,y
Delay 1000
index = index+1
Loop
End If
注: 此函数比FindStrExS要快很多,尤其是在字库很大时,或者模糊识别时,效果非常明显。
推荐使用此函数。
另外
由于此函数是只识别待查找的字符,所以可能会有如下情况出现问题。
比如 字库中有"张和三" 一共3个字符数据,然后待识别区域里是"张和三",如果用FindStrExS查找
"张三"肯定是找不到的,但是用FindStrFastExS却可以找到,因为"和"这个字符没有列入查找计划中
所以,在使用此函数时,也要特别注意这一点。
FindStrFastS
函数简介:
同FindStrS. <收费功能,具体详情点击查看>
函数原型:
long FindStrFastS(x1,y1,x2,y2,string,color_format,sim,intX,intY)
参数定义:
x1 整形数:区域的左上X坐标
y1 整形数:区域的左上Y坐标
x2 整形数:区域的右下X坐标
y2 整形数:区域的右下Y坐标
string 字符串:待查找的字符串,可以是字符串组合,比如"长安|洛阳|大雁塔",中间用"|"来分割字符串
color_format 字符串:颜色格式串
sim 双精度浮点数:相似度,取值范围0.1-1.0
intX 变参指针:返回X坐标 没找到返回-1
intY 变参指针:返回Y坐标 没找到返回-1
返回值:
字符串:
返回找到的字符串. 没找到的话返回长度为0的字符串.
示例:
dm_ret = dm.FindStrFastS(0,0,2000,2000,"长安","9f2e3f-000000",1.0,intX,intY)
If intX >= 0 and intY >= 0 Then
dm.MoveTo intX,intY
End If
dm_ret = dm.FindStrFastS(0,0,2000,2000,"长安|洛阳","9f2e3f-000000",0.9,intX,intY)
If intX >= 0 and intY >= 0 Then
dm.MoveTo intX,intY
End If
注: 此函数比FindStrS要快很多,尤其是在字库很大时,或者模糊识别时,效果非常明显。
推荐使用此函数。
另外由于此函数是只识别待查找的字符,所以可能会有如下情况出现问题。
比如 字库中有"张和三" 一共3个字符数据,然后待识别区域里是"张和三",如果用FindStrS查找
"张三"肯定是找不到的,但是用FindStrFastS却可以找到,因为"和"这个字符没有列入查找计划中
所以,在使用此函数时,也要特别注意这一点。
FindStrS
函数简介:
在屏幕范围(x1,y1,x2,y2)内,查找string(可以是任意个字符串的组合),并返回符合color_format的坐标位置,相似度sim同Ocr接口描述.
(多色,差色查找类似于Ocr接口,不再重述).此函数同FindStr,只是返回值不同. <收费功能,具体详情点击查看>
函数原型:
string FindStrS(x1,y1,x2,y2,string,color_format,sim,intX,intY)
参数定义:
x1 整形数:区域的左上X坐标
y1 整形数:区域的左上Y坐标
x2 整形数:区域的右下X坐标
y2 整形数:区域的右下Y坐标
string 字符串:待查找的字符串,可以是字符串组合,比如"长安|洛阳|大雁塔",中间用"|"来分割字符串
color_format 字符串:颜色格式串
sim 双精度浮点数:相似度,取值范围0.1-1.0
intX 变参指针:返回X坐标 没找到返回-1
intY 变参指针:返回Y坐标 没找到返回-1
返回值:
字符串:
返
回找到的字符串. 没找到的话返回长度为0的字符串.
示例:
dm_ret = dm.FindStrS(0,0,2000,2000,"长安","9f2e3f-000000",1.0,intX,intY)
If intX >= 0 and intY >= 0 Then
dm.MoveTo intX,intY
End If
dm_ret = dm.FindStrS(0,0,2000,2000,"长安|洛阳","9f2e3f-000000",1.0,intX,intY)
If intX >= 0 and intY >= 0 Then
dm.MoveTo intX,intY
End If
注: 此函数的原理是先Ocr识别,然后再查找。所以速度比FindStrFastS要慢,尤其是在字库
很大,或者模糊度不为1.0时。
一般字库字符数量小于100左右,模糊度为1.0时,用FindStrS要快一些,否则用FindStrFastS.
indSt函数简介:
同FindStr,但是不使用SetDict设置的字库,而利用系统自带的字库,速度比FindStr稍慢.
函数原型:
long FindStrWithFont(x1,y1,x2,y2,string,color_format,sim,font_name,font_size,flag,intX,intY)
参数定义:
x1 整形数:区域的左上X坐标
y1 整形数:区域的左上Y坐标
x2 整形数:区域的右下X坐标
y2 整形数:区域的右下Y坐标
string 字符串:待查找的字符串,可以是字符串组合,比如"长安|洛阳|大雁塔",中间用"|"来分割字符串
color_format 字符串:颜色格式串
sim 双精度浮点数:相似度,取值范围0.1-1.0
font_name 字符串:系统字体名,比如"宋体"
font_size 整形数:系统字体尺寸,这个尺寸一定要以大漠综合工具获取的为准.如果获取尺寸看视频教程.
flag 整形数:字体类别 取值可以是以下值的组合,比如1+2+4+8,2+4. 0表示正常字体.
1 : 粗体
2 : 斜体
4 : 下划线
8 : 删除线
intX 变参指针:返回X坐标 没找到返回-1
intY 变参指针:返回Y坐标 没找到返回-1
返回值:
整形数:
返回字符串的索引 没找到返回-1, 比如"长安|洛阳",若找到长安,则返回0
示例:
dm_ret = dm.FindStrWithFont(0,0,2000,2000,"长安","9f2e3f-000000",1.0,"宋体",9,0,intX,intY)
If intX >= 0 and intY >= 0 Then
dm.MoveTo intX,intY
End If
dm_ret = dm.FindStrWithFont(0,0,2000,2000,"长安|洛阳","9f2e3f-000000",1.0,"宋体",9,1+2,intX,intY)
If intX >= 0 and intY >= 0 Then
dm.MoveTo intX,intY
End If
注: 对于如何获取字体尺寸以及名字等信息,可以参考视频教程,如何使用系统字库.
rWithFont
FindStrWithFontE
函数简介:
同FindStrE,但是不使用SetDict设置的字库,而利用系统自带的字库,速度比FindStrE稍慢
函数原型:
string FindStrWithFontE(x1,y1,x2,y2,string,color_format,sim,font_name,font_size,flag)
参数定义:
x1 整形数:区域的左上X坐标
y1 整形数:区域的左上Y坐标
x2 整形数:区域的右下X坐标
y2 整形数:区域的右下Y坐标
string 字符串:待查找的字符串, 可以是字符串组合,比如"长安|洛阳|大雁塔",中间用"|"来分割字符串
color_format 字符串:颜色格式串
sim 双精度浮点数:相似度,取
值范围0.1-1.0
font_name 字符串:系统字体名,比如"宋体"
font_size 整形数:系统字体尺寸,这个尺寸一定要以大漠综合工具获取的为准.如果获取尺寸看视频教程.
flag 整形数:字体类别 取值可以是以下值的组合,比如1+2+4+8,2+4. 0表示正常字体.
1 : 粗体
2 : 斜体
4 : 下划线
8 : 删除线
返回值:
字符串:
返回字符串序号以及X和Y坐标,形式如"id|x|y", 比如"0|100|200",没找到时,id和X以及Y均为-1,"-1|-1|-1"
示例:
pos = dm.FindStrWithFontE(0,0,2000,2000,"长安","9f2e3f-000000",1.0,"宋体",9,0)
pos = split(pos,"|")
If int(pos(0)) >= 0 Then
dm.MoveTo int(pos(1)),int(pos(2))
End If
pos = dm.FindStrWithFontE(0,0,2000,2000,"长安|洛阳","9f2e3f-000000",1.0,"宋体",9,1+2)
pos = split(pos,"|")
If int(pos(0)) >= 0 Then
dm.MoveTo int(pos(1)),int(pos(2))
End If
注: 对于如何获取字体尺寸以及名字等信息,可以参考视频教程,如何使用系统字库.
FindStrWithFontEx
函数简介:
同FindStrEx,但是不使用SetDict设置的字库,而利用系统自带的字库,速度比FindStrEx稍慢
函数原型:
string FindStrWithFontEx(x1,y1,x2,y2,string,color_format,sim,font_name,font_size,flag)
参数定义:
x1 整形数:区域的左上X坐标
y1 整形数:区域的左上Y坐标
x2 整形数:区域的右下X坐标
y2 整形数:区域的右下Y坐标
string 字符串:待查找的字符串, 可以是字符串组合,比如"长安|洛阳|大雁塔",中间用"|"来分割字符串
color_format 字符串:颜色格式串
sim 双精度浮点数:相似度,取值范围0.1-1.0
font_name 字符串:系统字体名,比如"宋体"
font_size 整形数:系统字体尺寸,这个尺寸一定要以大漠综合工具获取的为准.如果获取尺寸看视频教程.
flag 整形数:字体类别 取值可以是以下值的组合,比如1+2+4+8,2+4. 0表示正常字体.
1 : 粗体
2 : 斜体
4 : 下划线
8 : 删除线
返回值:
字符串:
返回所有找到的坐标集合,格式如下:
"id,x0,y0|id,x1,y1|......|id,xn,yn"
比如"0,100,20|2,30,40" 表示找到了两个,第一个,对应的是序号为0的字符串,坐标是(100,20),第二个是序号为2的字符串,坐标(30,40)
示例:
dm_ret = dm.FindStrWithFontEx(0,0,2000,2000,"长安|洛阳","9f2e3f-000000",1.0,"宋体",9,1+2)
If len(dm_ret) > 0 Then
ss = split(dm_ret,"|")
index = 0
count = UBound(ss) + 1
Do While index < count
TracePrint ss(index)
sss = split(ss(index),",")
id = int(sss(0))
x = int(sss(1))
y = int(sss(2))
dm.MoveTo x,y
Delay 1000
index = index+1
Loop
End If
注: 对于如何获取字体尺寸以及名字等信息,可以参考视频教程,如何使用系统字库.
GetDictCount
函数简介:
获取指定的字库中的字符数量.
函数原型:
long
GetDictCount(index)
参数定义:
index 整形数: 字库序号(0-9)
返回值:
整形数:
字库数量
示例:
count = dm.GetDictCount(0)
TracePrint "0号字库使用的字库数量是:"&count
GetDictInfo
函数简介:
根据指定的文字,以及指定的系统字库信息,获取字库描述信息.
函数原型:
string GetDictInfo(str,font_name,font_size,flag)
参数定义:
str 字符串:需要获取的字符串
font_name 字符串:系统字体名,比如"宋体"
font_size 整形数:系统字体尺寸,这个尺寸一定要以大漠综合工具获取的为准.如果获取尺寸看视频教程.
flag 整形数:字体类别 取值可以是以下值的组合,比如1+2+4+8,2+4. 0表示正常字体.
1 : 粗体
2 : 斜体
4 : 下划线
8 : 删除线
返回值:
字符串:
返回字库信息,每个字符的字库信息用"|"来分割
示例:
// 下面的代码是获取"回收站"这3个字符的字库信息,然后加入到字库1中.
font_desc = dm.GetDictInfo("回收站","宋体",9,0)
font_desc = split(font_desc,"|")
count = ubound(font_desc)
for i = 0 to count
TracePrint font_desc(i)
dm.AddDict 1,font_desc(i)
next
GetNowDict
函数简介:
获取当前使用的字库序号(0-9)
函数原型:
long GetNowDict()
参数定义:
返回值:
整形数:
字库序号(0-9)
示例:
index = dm.GetNowDict()
TracePrint "当前使用的字库序号是:"&index
GetResultCount
函数简介:
对插件部分接口的返回值进行解析,并返回ret中的坐标个数
函数原型:
long GetResultCount(ret)
参数定义:
ret 字符串: 部分接口的返回串
返回值:
整形数:
返回ret中的坐标个数
示例:
s = dm.FindColorEx(0,0,2000,2000,"123456-000000|abcdef-202020",1.0,0)
count = dm.GetResultCount(s)
MessageBox count
GetResultPos
函数简介:
对插件部分接口的返回值进行解析,并根据指定的第index个坐标,返回具体的值
函数原型:
long GetResultPos(ret,index,intX,intY)
参数定义:
ret 字符串:部分接口的返回串
index 整形数: 第几个坐标
intX 变参指针: 返回X坐标
intY 变参指针: 返回Y坐标
返回值:
整形数:
0:失败
1:成功
示例:
s = dm.FindColorEx(0,0,2000,2000,"123456-000000|abcdef-202020",1.0,0)
count = dm.GetResultCount(s)
index = 0
Do While index < count
dm_ret = dm.GetResultPos(s,index,intX,intY)
MessageBox intX&","&intY
index = index + 1
Loop
GetWordResultCount
函数简介:
在使用GetWords进行词组识别以后,可以用此接口进行识别词组数量的计算.
函数原型:
long GetWordResultCount(str)
参数定义:
str 字符串: GetWords接口调用以后的返回值
返回值:
整形数:
返回词组数量
示例:
s = dm.GetWords(0,0,2000,2000,"000000-000000",1.0)
count = dm.GetWordResultCount(s)
MessageBox count
GetWordResultPos
函数简介:
在使用GetWords进行词组识别以后,可以用此接口进行识别各个词组的坐标
函数原型:
long GetWordResultPos(str,index,intX,intY)
参数定义:
str 字符串: GetWords的返回值
index 整形数: 表示第几个词组
intX 变参指针: 返回的X坐标
intY 变参指针: 返回的Y坐标
返回值:
整形数:
0: 失败
1: 成功
示例:
s = dm.GetWords(0,0,2000,2000,"000000-000000",1.0)
count = dm.GetWordResultCount(s)
index = 0
Do While index < count
dm_ret = dm.GetWordResultPos(s,index,intX,intY)
MessageBox intX&","&intY
index = index + 1
Loop
GetWordResultStr
函数简介:
在使用GetWords进行词组识别以后,可以用此接口进行识别各个词组的内容
函数原型:
string GetWordResultStr(str,index)
参数定义:
str 字符串: GetWords的返回值
index 整形数: 表示第几个词组
返回值:
字符串:
返回的第index个词组内容
示例:
s = dm.GetWords(0,0,2000,2000,"000000-000000",1.0)
count = dm.GetWordResultCount(s)
index = 0
Do While index < count
word = dm.GetWordResultStr(s,index)
MessageBox word
index = index + 1
Loop
GetWords
函数简介:
根据指定的范围,以及设定好的词组识别参数(一般不用更改,除非你真的理解了)
识别这个范围内所有满足条件的词组. 比较适合用在未知文字的情况下,进行不定识别.
函数原型:
string GetWords(x1, y1, x2, y2, color, sim)
参数定义:
x1 整形数:左上角X坐标
y1 整形数:左上角Y坐标
x2 整形数:右下角X坐标
y2 整形数:右下角Y坐标
color 字符串: 颜色格式串
sim 双精度浮点数:相似度 0.1-1.0
返回值:
字符串:
识别到的格式串,要用到专用函数来解析
示例:
s = dm.GetWords(0,0,2000,2000,"000000-000000",1.0)
count = dm.GetWordResultCount(s)
index = 0
Do While index < count
dm_ret = dm.GetWordResultPos(s,index,intX,intY)
word = dm.GetWordResultStr(s,index)
MessageBox intX&","&intY&","&word
index = index + 1
Loop
GetWordsNoDict
函数简介:
根据指定的范围,以及设定好的词组识别参数(一般不用更改,除非你真的理解了)
识别这个范围内所有满足条件的词组. 这个识别函数不会用到字库。只是识别大概形状的位置
函数原型:
string GetWordsNoDict(x1, y1, x2, y2, color)
参数定义:
x1 整形数:左上角X坐标
y1 整形数:左上角Y坐标
x2 整形数:右下角X坐标
y2 整形数:右下角Y坐标
color 字符串: 颜色格式串
返回值:
字符串:
识别到的格式串,要用到专用函数来解析
示例:
s = dm.GetWordsNoDict(0,0,2000,2000,"000000-000000")
count = dm.GetResultCount(s)
index = 0
Do While index < count
dm_ret = dm.GetResultPos(s,index,intX,intY)
MessageBox intX&","&intY
index = index + 1
Loop
Ocr(
函数简介:
识别屏幕范围(x1,y1,x2,y2)内符合color_format的字符串,并且相似度为sim,sim取值范围(0.1-1.0),
这个值越大越精确,越大速度越快,越小速度越慢,请斟酌使用!
函数原型:
string Ocr(x1,y1,x2,y2,color_format,sim)
参数定义:
x1 整形数:区域的左上X坐标
y1 整形数:区域的左上Y坐标
x2 整形数:区域的右下X坐标
y2 整形数:区域的右下Y坐标
color_format 字符串:颜色格式串
sim 双精度浮点数:相似度,取值范围0.1-1.0
返回值:
字符串:
返回识别到的字符串
示例:
//RGB单色识别
s = dm.Ocr(0,0,2000,2000,"9f2e3f-000000",1.0)
MessageBox s
//RGB单色差色识别
s = dm.Ocr(0,0,2000,2000,"9f2e3f-030303",1.0)
MessageBox s
//RGB多色识别(最多支持10种,每种颜色用"|"分割)
s = dm.Ocr(0,0,2000,2000,"9f2e3f-030303|2d3f2f-000000|3f9e4d-100000",1.0)
MessageBox s
//HSV多色识别(最多支持10种,每种颜色用"|"分割)
s = dm.Ocr(0,0,2000,2000,"20.30.40-0.0.0|30.40.50-0.0.0",1.0)
MessageBox s
//识别后,每行字符串用指定字符分割
比如用"|"字符分割
s = dm.Ocr(0,0,2000,2000,"9f2e3f-000000,|",1.0)
MessageBox s
//比如用回车换行分割
s = dm.Ocr(0,0,2000,2000,"9f2e3f-000000,"+vbcrlf,1.0)
MessageBox s
//背景色识别
//比如要识别背景色为白色,文字颜色未知的字形
s = dm.Ocr(0,0,2000,2000,"b@ffffff-000000",1.0)
MessageBox s
//注: 在color_fomat最前面加上"b@"表示后面的颜色描述是针对背景色,而非字的颜色.
OcrEx
函数简介:
识别屏幕范围(x1,y1,x2,y2)内符合color_format的字符串,并且相似度为sim,sim取值范围(0.1-1.0),
这个值越大越精确,越大速度越快,越小速度越慢,请斟酌使用!
这个函数可以返回识别到的字符串,以及每个字符的坐标.
函数原型:
string OcrEx(x1,y1,x2,y2,color_format,sim)
参数定义:
x1 整形数:区域的左上X坐标
y1 整形数:区域的左上Y坐标
x2 整形数:区域的右下X坐标
y2 整形数:区域的右下Y坐标
color_format 字符串:颜色格式串
sim 双精度浮点数:相似度,取值范围0.1-1.0
返回值:
字符串:
返回识别到的字符串 格式如 "识别到的信息|x0,y0|…|xn,yn"
示例:
和Ocr函数相同,只是结果处理有所不同 如下
ss = dm.OcrEx(0,0,2000,2000,"ffffff|000000",1.0)
ss = split(ss,"|")
MessageBox "识别到的字符串:"&ss(0)
ss_len = len(ss(0))
for i = 1 to ss_len
MessageBox "第("&i&")的坐标是"&ss(i)
next
OcrInFile
函数简介:
识别位图中区域(x1,y1,x2,y2)的文字
函数原型:
string OcrInFile(x1, y1, x2, y2, pic_name, color_format, sim)
参数定义:
x1 整形数:区域的左上X坐标
y1 整形数:区域的左上Y坐标
x2 整形数:区域的右下X坐标
y2 整形数:区域的右下Y坐标
pic_name 字符串:图片文件名
color_format 字符串:颜色格式
串
sim 双精度浮点数:相似度,取值范围0.1-1.0
返回值:
字符串:
返回识别到的字符串
示例:
s = dm.OcrInFile(0,0,2000,2000,"test.bmp","000000-000000",1.0)
MessageBox s
SaveDict
函数简介:
保存指定的字库到指定的文件中.
函数原型:
long SaveDict(index,file)
参数定义:
index 整形数:字库索引序号 取值为0-9对应10个字库
file 字符串:文件名
返回值:
整形数:
0:失败
1:成功
示例:
dm.SetPath "c:\test_game"
dm.AddDict 0,"FFF00A7D49292524A7D402805FFC$回$0.0.54$11"
dm.AddDict 0,"3F0020087FF08270B9A108268708808$收$0.0.43$11"
dm.AddDict 0,"2055C98617420807C097F222447C800$站$0.0.44$11"
dm.SaveDict 0,"test.txt"
SetColGapNoDict
函数简介:
高级用户使用,在不使用字库进行词组识别前,可设定文字的列距,默认列距是1
函数原型:
long SetColGapNoDict(col_gap)
参数定义:
col_gap 整形数:文字列距
返回值:
整形数:
0:失败
1:成功
示例:
dm_ret = dm.SetColGapNoDict(3)
SetDict(
函数简介:
设置字库文件
函数原型:
long SetDict(index,file)
参数定义:
index 整形数:字库的序号,取值为0-9,目前最多支持10个字库
file 字符串:字库文件名
返回值:
整形数:
0:失败
1:成功
示例:
dm_ret = dm.SetDict(0,"test.txt")
注: 此函数速度很慢,全局初始化时调用一次即可,切换字库用UseDict
SetDictMem
函数简介:
从内存中设置字库. <收费功能,具体详情点击查看>
函数原型:
long SetDictMem(index,addr,size)
参数定义:
index 整形数:字库的序号,取值为0-9,目前最多支持10个字库
addr 整形数: 数据地址
size 整形数: 字库长度
返回值:
整形数:
0:失败
1:成功
示例:
dm_ret = dm.SetDictMem(0,234324,1000)
注: 此函数速度很慢,全局初始化时调用一次即可,切换字库用UseDict
SetDictPwd
函数简介:
设置字库的密码,在SetDict前调用,目前的设计是,所有字库通用一个密码.
函数原型:
long SetDictPwd(pwd)
参数定义:
pwd 字符串:字库密码
返回值:
整形数:
0:失败
1:成功
示例:
dm_ret = dm.SetDictPwd("1234")
注意:如果使用了多字库,所有字库的密码必须一样.
SetExactOcr
函数简介:
高级用户使用,在使用文字识别功能前,设定是否开启精准识别.
函数原型:
long SetExactOcr(exact_ocr)
参数定义:
exact_ocr 整形数: 0 表示关闭精准识别
1 开启精准识别
返回值:
整形数:
0:失败
1:成功
示例:
// 开启精准识别
dm_ret = dm.SetExactOcr(1)
注意: 精准识别开启后,行间距和列间距会对识别结果造成较大影响,可以在工具中进行测试.
SetMinColGap
函数简介:
高级用户使用,在识别前,如果待识别区域有多行文字,可以设定列间
距,默认的列间距是0,
如果根据情况设定,可以提高识别精度。一般不用设定。
函数原型:
long SetMinColGap(min_col_gap)
参数定义:
min_col_gap 整形数:最小列间距
返回值:
整形数:
0:失败
1:成功
示例:
dm_ret = dm.SetMinColGap(1)
注意:此设置如果不为0,那么将不能识别连体字 慎用.
SetMinRowGap
函数简介:
高级用户使用,在识别前,如果待识别区域有多行文字,可以设定行间距,默认的行间距是1,
如果根据情况设定,可以提高识别精度。一般不用设定。
函数原型:
long SetMinRowGap(min_row_gap)
参数定义:
min_row_gap 整形数:最小行间距
返回值:
整形数:
0:失败
1:成功
示例:
dm_ret = dm.SetMinRowGap(2)
SetRowGapNoDict
函数简介:
高级用户使用,在不使用字库进行词组识别前,可设定文字的行距,默认行距是1
函数原型:
long SetRowGapNoDict(row_gap)
参数定义:
row_gap 整形数:文字行距
返回值:
整形数:
0:失败
1:成功
示例:
dm_ret = dm.SetRowGapNoDict(3)
SetWordGap
函数简介:
高级用户使用,在识别词组前,可设定词组间的间隔,默认的词组间隔是5
函数原型:
long SetWordGap(word_gap)
参数定义:
word_gap 整形数:单词间距
返回值:
整形数:
0:失败
1:成功
示例:
dm_ret = dm.SetWordGap(5)
SetWordGapNoDict
函数简介:
高级用户使用,在不使用字库进行词组识别前,可设定词组间的间隔,默认的词组间隔是1
函数原型:
long SetWordGapNoDict(word_gap)
参数定义:
word_gap 整形数:单词间距
返回值:
整形数:
0:失败
1:成功
示例:
dm_ret = dm.SetWordGapNoDict(5)
SetWordLineHeight
函数简介:
高级用户使用,在识别词组前,可设定文字的平均行高,默认的词组行高是10
函数原型:
long SetWordLineHeight(line_height)
参数定义:
line_height 整形数:行高
返回值:
整形数:
0:失败
1:成功
示例:
dm_ret = dm.SetWordLineHeight(15)
SetWordLineHeightNoDict
函数简介:
高级用户使用,在不使用字库进行词组识别前,可设定文字的平均行高,默认的词组行高是10
函数原型:
long SetWordLineHeightNoDict(line_height)
参数定义:
line_height 整形数:行高
返回值:
整形数:
0:失败
1:成功
示例:
dm_ret = dm.SetWordLineHeightNoDict(15)
UseDict
函数简介:
表示使用哪个字库文件进行识别(index范围:0-9)
设置之后,永久生效,除非再次设定
函数原型:
long UseDict(index)
参数定义:
index 整形数:字库编号(0-9)
返回值:
整形数:
0:失败
1:成功
示例:
dm_ret = https://www.doczj.com/doc/a315776195.html,eDict(1)
ss = dm.Ocr(0,0,2000,2000,"FFFFFF-000000",1.0)
dm_ret = https://www.doczj.com/doc/a315776195.html,eDict(0)
系统
Beep
函数简介:
蜂鸣器.
函数原型:
long Bee
p(f,duration)
参数定义:
f 整形数: 频率
duration 整形数: 时长(ms).
返回值:
整形数:
0 : 失败
1 : 成功
示例:
dm.Beep 1000,1000
CheckFontSmooth
函数简介:
检测当前系统是否有开启屏幕字体平滑. <收费功能,具体详情点击查看>
函数原型:
long CheckFontSmooth()
参数定义:
返回值:
整形数:
0 : 系统没开启平滑字体.
1 : 系统有开启平滑字体.
示例:
if dm.CheckFontSmooth () = 1 then
TracePrint "当前系统有开启平滑字体"
end if
CheckUAC
函数简介:
检测当前系统是否有开启UAC(用户账户控制).
函数原型:
long CheckUAC()
参数定义:
返回值:
整形数:
0 : 没开启UAC
1 : 开启了UAC
示例:
if dm.CheckUAC() = 1 then
TracePrint "当前系统开启了用户账户控制"
end if
注: 只有WIN7 VISTA WIN2008以及以上系统才有UAC设置
Delay(
函数简介:
延时指定的毫秒,过程中不阻塞UI操作. 一般高级语言使用.按键用不到. <收费功能,具体详情点击查看>
函数原型:
long Delay(mis)
参数定义:
mis整形数: 毫秒数.
返回值:
整形数:
0 : 失败
1 : 成功
示例:
dm.Delay 1000
注: 由于是com组件,调用此函数必须保证调用线程的模型为STA.否则此函数会阻塞当前线程UI.
DisableFontSmooth
函数简介:
关闭当前系统屏幕字体平滑. <收费功能,具体详情点击查看>
函数原型:
long DisableFontSmooth()
参数定义:
返回值:
整形数:
0 : 失败
1 : 成功
示例:
if dm.DisableFontSmooth() = 1 then
MessageBox "关闭了当前系统平滑字体,重启生效"
dm.ExitOs 2
Delay 2000
EndScript
end if
注: 关闭之后要让系统生效,必须重启系统才有效.
DisablePowerSave
函数简介:
关闭电源管理,不会进入睡眠.
函数原型:
long DisablePowerSave()
参数定义:
返回值:
整形数:
0 : 失败
1 : 成功
示例:
dm.DisablePowerSave
注 :此函数调用以后,并不会更改系统电源设置.
此函数经常用在后台操作过程中. 避免被系统干扰.
DisableScreenSave
函数简介:
关闭屏幕保护.
函数原型:
long DisableScreenSave()
参数定义:
返回值:
整形数:
0 : 失败
1 : 成功
示例:
dm.DisableScreenSave
注 : 调用此函数后,可能在系统中还是看到屏保是开启状态。但实际上屏保已经失效了.
系统重启后,会失效。必须再重新调用一次.
此函数经常用在后台操作过程中. 避免被系统干扰.
ExitOs
函数简介:
退出系统(注销 重启 关机)
函数原型:
long ExitOs(type)
参数定义:
type 整形数: 取值为以下类型
0 : 注销系统
1 : 关机
2 : 重新启动
返回值:
整形数:
0 : 失败
1 : 成功
示例
:
dm_ret = dm.ExitOs(1)
GetClipboard
函数简介:
获取剪贴板的内容
函数原型:
string GetClipboard()
参数定义:
返回值:
字符串:
以字符串表示的剪贴板内容
示例:
TracePrint dm.GetClipboard()
GetDir
函数简介:
得到系统的路径
函数原型:
string GetDir(type)
参数定义:
type 整形数: 取值为以下类型
0 : 获取当前路径
1 : 获取系统路径(system32路径)
2 : 获取windows路径(windows所在路径)
3 : 获取临时目录路径(temp)
4 : 获取当前进程(exe)所在的路径
返回值:
字符串:
返回路径
示例:
path = dm.GetDir(2)
GetDiskSerial
函数简介:
获取本机的硬盘序列号.支持ide scsi硬盘. 要求调用进程必须有管理员权限. 否则返回空串.
函数原型:
string GetDiskSerial()
参数定义:
返回值:
字符串:
字符串表达的硬盘序列号
示例:
sirial = dm.GetDiskSerial()
GetMachineCode
函数简介:
获取本机的机器码.(带网卡). 此机器码用于插件网站后台. 要求调用进程必须有管理员权限. 否则返回空串.
函数原型:
string GetMachineCode()
参数定义:
返回值:
字符串:
字符串表达的机器机器码
示例:
machine_code = dm.GetMachineCode()
注: 此机器码包含的硬件设备有硬盘,显卡,网卡等. 其它不便透露. 重装系统不会改变此值.
GetMachineCodeNoMac
函数简介:
获取本机的机器码.(不带网卡) 要求调用进程必须有管理员权限. 否则返回空串.
函数原型:
string GetMachineCodeNoMac()
参数定义:
返回值:
字符串:
字符串表达的机器机器码
示例:
machine_code = dm.GetMachineCodeNoMac()
注: 此机器码包含的硬件设备有硬盘,显卡,等. 其它不便透露. 重装系统不会改变此值.
GetNetTime
函数简介:
从网络获取当前北京时间.
函数原型:
string GetNetTime()
参数定义:
返回值:
字符串:
时间格式. 和now返回一致. 比如"2001-11-01 23:14:08"
示例:
t = dm.GetNetTime()
TracePrint "当前北京时间是:"&t
GetNetTimeSafe函数简介:
从网络获取当前北京时间. 同GetNetTime. 但此接口数据是加密传送,以免被人破解. <收费功能,具体详情点击查看>
函数原型:
string GetNetTimeSafe()
参数定义:
返回值:
字符串:
时间格式. 和now返回一致. 比如"2001-11-01 23:14:08"
示例:
t = dm.GetNetTimeSafe()
TracePrint "当前北京时间是:"&t
GetOsType函数简介:
得到操作系统的类型
函数原型:
long GetOsType()
参数定义:
返回值:
整形数:
0 : win95/98/me/nt4.0
1 : xp/2000
2 : 2003
3 : win7/vista/2008
示例:
os_type = dm.GetOsType()
GetScreenDepth函数简介:
获取屏幕的色深.
函
数原型:
long GetScreenDepth()
参数定义:
返回值:
整形数:
返回系统颜色深度.(16或者32等)
示例:
Depth = dm.GetScreenDepth()
GetScreenHeigh函数简介:
获取屏幕的高度.
函数原型:
long GetScreenHeight()
参数定义:
返回值:
整形数:
返回屏幕的高度
示例:
ScreenH = dm.GetScreenHeight()
GetScreenWidt函数简介:
获取屏幕的宽度.
函数原型:
long GetScreenWidth()
参数定义:
返回值:
整形数:
返回屏幕的宽度
示例:
ScreenW = dm.GetScreenWidth()
GetTime函数简介:
获取当前系统从开机到现在所经历过的时间,单位是毫秒
函数原型:
long GetTime()
参数定义:
返回值:
整形数:
时间(单位毫秒)
示例:
t1 = dm.GetTime()
dm_ret = dm.FindPic(0,0,2000,2000,"test.bmp","000000",1.0,0,x,y)
t2 = dm.GetTime()
MessageBox (t2-t1)
Is64Bit函数简介:
判断当前系统是否是64位操作系统
函数原型:
long Is64Bit()
参数定义:
返回值:
整形数:
0 : 不是64位系统
1 : 是64位系统
示例:
if dm.Is64Bit() = 1 then
MessageBox "64位系统"
else
MessageBox "不是64位系统"
end if
Play函数简介:
播放指定的MP3或者wav文件.
函数原型:
long Play(media_file)
参数定义:
media_file 字符串: 指定的音乐文件,可以采用文件名或者绝对路径的形式.
返回值:
整形数:
0 : 失败
非0表示当前播放的ID。可以用Stop来控制播放结束.
示例:
// test.mp3放于d:\test目录下
dm.SetPath "d:\test"
id = dm.Play("test.mp3")
// 绝对路径
id = dm.Play("d:\test\test.mp3")
Delay 1000
dm.Stop id
RunApp函数简介:
运行指定的应用程序. <收费功能,具体详情点击查看>
函数原型:
long RunApp(app_path,mode)
参数定义:
app_path 字符串: 指定的可执行程序全路径.
mode 整形数: 取值如下
0 : 普通模式
1 : 加强模式
返回值:
整形数:
0 : 失败
1 : 成功
示例:
dm.RunApp "c:\windows\notepad.exe",0
dm.RunApp "notepad",1
SetClipboard函数简介:
设置剪贴板的内容
函数原型:
long SetClipboard(value)
参数定义:
value 字符串: 以字符串表示的剪贴板内容
返回值:
整形数:
0 : 失败
1 : 成功
示例:
dm.SetClipboard "abcd"
SetDisplayAcceler
函数简介:
设置当前系统的硬件加速级别. <收费功能,具体详情点击查看>
函数原型:
long SetDisplayAcceler(level)
参数定义:
level整形数: 取值范围为0-5. 0表示关闭硬件加速。5表示完全打开硬件加速.
返回值:
整形数:
0 : 失败.
1 : 成功.
示例:
// 关闭硬件加速
TracePrint SetDisplayAcceler(0)
注: 此函数只在XP 2003系统有效.
SetScreen函数简介:
设
置系统的分辨率 系统色深
函数原型:
long SetScreen(width,height,depth)
参数定义:
width 整形数: 屏幕宽度
height 整形数: 屏幕高度
depth 整形数: 系统色深
返回值:
整形数:
0 : 失败
1 : 成功
示例:
dm_ret = dm.SetScreen(1024,768,16)
SetUAC函数简介:
设置当前系统的UAC(用户账户控制).
函数原型:
long SetUAC(enable)
参数定义:
enable 整形数: 取值如下
0 : 关闭UAC
1 : 开启UAC
返回值:
整形数:
0 : 操作失败
1 : 操作成功
示例:
if dm.SetUAC(0) = 1 then
TracePrint "成功关闭了当前系统UAC设置"
end if
注: 只有WIN7 VISTA WIN2008以及以上系统才有UAC设置. 关闭UAC以后,必须重启系统才会生效.
如果关闭了UAC,那么默认启动所有应用程序都是管理员权限,就不会再发生绑定失败这样的尴尬情况了.
Stop函数简介:
停止指定的音乐.
函数原型:
long Stop(id)
参数定义:
id 整形数: Play返回的播放id.
返回值:
整形数:
0 : 失败
1 : 成功.
示例:
// test.mp3放于d:\test目录下
dm.SetPath "d:\test"
id = dm.Play("test.mp3")
// 绝对路径
id = dm.Play("d:\test\test.mp3")
Delay 1000
杂项
ActiveInputMethod函数简介:
激活指定窗口所在进程的输入法.
函数原型:
long ActiveInputMethod(hwnd,input_method)
参数定义:
hwnd 整形数: 窗口句柄
input_method 字符串: 输入法名字。具体输入法名字对应表查看注册表中以下位置:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts
下面的每一项下的Layout Text的值就是输入法名字
比如 "中文 - QQ拼音输入法"
以此类推.
返回值:
整形数:
0 : 失败
1 : 成功
示例:
dm_ret = dm.ActiveInputMethod(hwnd,"中文 - QQ拼音输入法")
if dm_ret = 1 then
msgbox "QQ输入法开启成功"
end if
CheckInputMethod函数简介:
检测指定窗口所在线程输入法是否开启
函数原型:
long CheckInputMethod(hwnd,input_method)
参数定义:
hwnd 整形数: 窗口句柄
input_method 字符串: 输入法名字。具体输入法名字对应表查看注册表中以下位置:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts
下面的每一项下的Layout Text的值就是输入法名字
比如 "中文 - QQ拼音输入法"
以此类推.
返回值:
整形数:
0 : 未开启
1 : 开启
示例:
dm_ret = dm.CheckInputMethod(hwnd,"中文 - QQ拼音输入法")
if dm_ret = 1 then
msgbox "QQ输入法开启拉"
end if
FindInputMethod函数简介:
检测系统中是否安装了指定输入法
函数原型:
long FindInputMethod(input_method)
参数定义:
input_method 字符串: 输入法名字。具体输入法名字对应表查看注册表中
以下位置:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts
下面的每一项下的Layout Text的值就是输入法名字
比如 "中文 - QQ拼音输入法"
以此类推.
返回值:
整形数:
0 : 未安装
1 : 安装了
示例:
dm_ret = dm.FindInputMethod("中文 - QQ拼音输入法")
if dm_ret = 1 then
msgbox "QQ输入法安装啦"
end if
GetCursorPos函数简介:
获取系统鼠标在屏幕上的位置
函数原型:
long GetCursorPos(x,y)
参数定义:
x 变参指针: 返回X坐标
y 变参指针: 返回Y坐标
返回值:
整形数:
0 : 失败
1 : 成功
示例:
dm.GetCursorPos x,y
MessageBox x&","&y