大漠插件

1.注册


(1)regsr32 dm.dll
(2)注意:如果注册失败,需要以管理员方式运行,或者在system32文件夹下运行


2.注册成功测试程序


(1)准备:导入pypiwin32
(2)测试程序:

import win32com.client
dm = win32com.client.Dispatch(‘dm.dmsoft’)
print(dm.Ver())


3.找色


long FindColor(x1, y1, x2, y2, color, sim, dir,intX,intY)
(1)参数介绍:
x1, y1, x2, y2:找色区域
color 字符串:颜色 格式为"RRGGBB-DRDGDB"(rgb颜色+偏色)
sim 双精度浮点数:相似度,取值范围0.1-1.0
dir 整形数:查找方向 0: 从左到右,从上到下 
             1: 从左到右,从下到上 
             2: 从右到左,从上到下 
             3: 从右到左,从下到上 
             4:从中心往外查找
             5: 从上到下,从左到右 
             6: 从上到下,从右到左
             7: 从下到上,从左到右
             8: 从下到上,从右到左
intX 变参指针:返回X坐标
intY 变参指针:返回Y坐标
例:dm.FindColor(0, 0, 1920, 1080, “6bff00-000000”, 1, 0, x, y)   
(2)找色工具:大漠综合工具,需要勾选偏色按钮
(3)缺点:不精确


4.把鼠标移动到目的点(x,y)


long MoveTo(x,y)
返回值:0:失败    1:成功


5.键鼠操作


(1)按下鼠标左键    long LeftClick()    
(2)双击鼠标左键    long LeftDoubleClick()
(3)按住鼠标左键    long LeftDown()
(4)弹起鼠标左键    long LeftUp()
(5)获取鼠标位置    long GetCursorPos(x,y)
(6)按下指定的虚拟键码    long KeyPressChar(key_str)
例:dm.KeyPressChar "enter"
dm.KeyPressChar "1"


6.找图


long FindPic(x1, y1, x2, y2, pic_name, delta_color,sim, dir,intX, intY)
(1)参数定义
x1 整形数:区域的左上X坐标
y1 整形数:区域的左上Y坐标
x2 整形数:区域的右下X坐标
y2 整形数:区域的右下Y坐标
pic_name 字符串:图片名,可以是多个图片,比如"test.bmp|test2.bmp|test3.bmp"
delta_color 字符串:颜色色偏比如"203040" 表示RGB的色偏分别是20 30 40 (这里是16进制表示)
sim 双精度浮点数:相似度,取值范围0.1-1.0
dir 整形数:查找方向 0: 从左到右,从上到下 1: 从左到右,从下到上 2: 从右到左,从上到下 3: 从右到左, 从下到上
intX 变参指针:返回图片左上角的X坐标
intY 变参指针:返回图片左上角的Y坐标
(2)返回值
返回找到的图片的序号,从0开始索引.如果没找到返回-1
(3)例:dm.FindPic(0,0,2000,2000,"1.bmp|2.bmp|3.bmp","000000",0.9,0,intX,intY)
(4)工具:大漠综合工具:抓图
(5)缺点:速度慢


7.找字


(1)建立字库
①抓图
②勾选偏色,点击偏色去提取一个黑色像素
③提取点阵(多个)
④定义文字
⑤回车(添加到当前字库)
(2)在屏幕范围(x1,y1,x2,y2)内,查找string(可以是任意个字符串的组合),并返回符合color_format的坐标位置,相似度sim同Ocr接口描述.
①long FindStr(x1,y1,x2,y2,string,color_format,sim,intX,intY)
②例:dm.FindStr(0,0,2000,2000,"长安","9f2e3f-000000",1.0,intX,intY)


8.查找顶层可见窗口


(1)long FindWindow(class,title) 
(2)参数定义
①class 字符串: 窗口类名,如果为空,则匹配所有. 这里的匹配是模糊匹配.
②title 字符串: 窗口标题,如果为空,则匹配所有.这里的匹配是模糊匹配
(3)返回窗口句柄,没找到返回0
(4)例:hwnd = dm.FindWindow("","记事本") 


9.查找子窗口


(1)long FindWindowEx(parent,class,title)
(2)参数定义:
①parent 整形数: 父窗口句柄,如果为空,则匹配所有顶层窗口
②class 字符串: 窗口类名,如果为空,则匹配所有. 这里的匹配是模糊匹配.
③title 字符串: 窗口标题,如果为空,则匹配所有. 这里的匹配是模糊匹配.
(3)返回窗口句柄,没找到返回0
(4)例:hwnd2 = dm.FindWindowEx(hwnd,"","记事本") 
(5)工具:精易编程助手


10.绑定指定窗口


(1)并指定这个窗口的屏幕颜色获取方式,鼠标仿真模式,键盘仿真模式,以及模式设定,高级用户可以参考BindWindowEx更加灵活强大.
(2)long BindWindow(hwnd,display,mouse,keypad,mode)
(3)参数
①hwnd:窗口句柄
②display 字符串: 屏幕颜色获取方式 取值有以下几种
(4)例:dm_ret = dm.BindWindow(hwnd,"gdi","windows","windows",0)


11.抓取指定区域(x1, y1, x2, y2)的图像,保存为file(24位位图)


(1)long Capture(x1, y1, x2, y2, file)

 

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值