大漠帮助文档2

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.360docs.net/doc/a715776195.html,eDict(1)
ss = dm.Ocr(0,0,2000,2000,"FFFFFF-000000",1.0)
dm_ret = https://www.360docs.net/doc/a715776195.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





相关文档
最新文档