大漠命令
制作大漠字库
制作⼤漠字库许多童鞋在写脚本的时候时常会遇到需要识别字符的情况,这种字符的出现往往是有包含了⽐较复杂的背景⾊。
如果是使⽤找图的⽅式去找的话,那就需要先把字符截图下来,然后对图⽚进⾏透明图处理,才能成功的使⽤找图⽅式查找。
这种⽅法有很⼤的弊端,⼀⽅⾯如果要找的字符⽐较多的话,需要每张图都需要慢慢处理,⼯作量⼤,另⼀⽅⾯,这种⽅法只能⽤来识别固定顺序的字符,如果字符排列顺序变化的话就⽆法识别了。
今天⼩编就给⼤家介绍下使⽤⼤漠插件快速找字的⽅法⼤漠找字命令按键精灵本⾝的插件命令⾥就有包含了找字的命令。
(还不知道的童鞋赶快去看这⾥,下载最新的按键精灵插件:【院刊】-【201501期】新增变速、找字等插件命令!赶紧来下载!)但是按键精灵本⾝的找字命令有⽐较⼤的缺陷,它只能识别系统⾃带的字库字体。
⽽⼤漠插件除了能识别系统字体外也能通过制作字库的⽅式去识别其他的字体。
PS:什么样的字体才算是系统字体呢?其实打开记事本⾥的字体设置,⾥⾯列出的⼀⼤堆都是系统字库本⾝就包含的字体,这些就是系统字体。
有⼀些游戏它显⽰出来的⽂字并不是直接利⽤系统字库⽣成的,⽽是有⾃⼰的⼀套字库,这种字体往往都是有加了特效,以及形状有改变。
系统字库字体:游戏⾃带字体:⼤漠制作字库以下为本帖隐藏内容==============================对于系统字体的识别使⽤按键精灵⾃带的插件就可以完成了,所以我们这⾥就不多做介绍了。
主要是介绍下使⽤⼤漠⼯具制作的字库的⽅法⼯具准备在制作字库之前需要先下载⼤漠综合⼯具,下载地址:⼤漠综合⼯具下载制作字库打开⼤漠综合⼯具,点击红框处的抓图按钮,把需要制作成字库的⽂字截图下来我们这⾥就先拿个⽹页游戏的地图名称为例⼦,做⼀个地图名称的字库。
1、先把字符部分截图下来,然后就可以在左上⾓看到刚才截取的图⽚2、点击下⾯的红框处,选择添加上要找的字符的颜⾊,以及设置好适当的偏⾊。
记得要勾选上后⾯的勾才能⽣效关于设置偏⾊的⽅法可以参考之前的⼀篇院刊:如何识别渐变⾊或半透明的⽂字PS: 对于偏⾊的设置,使⽤偏⾊计算器是⼀种⽐较精确的⽅法。
大漠插件背景色识别用法
大漠插件背景色识别用法大漠插件是一款专业的自动化工具,可用于抓取屏幕信息、识别验证码等操作。
其中,背景色识别功能是其重要的功能之一。
本文将针对大漠插件背景色识别的用法进行详细的介绍。
一、背景色识别的原理大漠插件背景色识别功能的原理是通过识别指定区域的背景颜色RGB 值,从而判断是否出现了目标界面或元素。
具体来说,它使用了屏幕颜色取色技术和像素点图像处理算法,实现了准确、高效的背景色识别效果。
二、背景色识别的操作步骤1. 准备工作首先需要确认要识别的区域,一般可以通过找到目标窗口、元素的坐标位置,或者用鼠标画出需要识别的区域。
同时,需要准备好目标界面,确保目标界面已经运行并处于正确的状态。
2. 设置和配置在大漠插件中,背景色识别是作为一种脚本操作来实现的。
因此,首先需要编写一个脚本,并在其中添加背景色识别的相关命令。
具体来说,可以使用以下命令进行设置和配置:SetExactOcr True:设置精准识别模式。
SetDictPwd "123456":设置词典密码,用于识别英文、数字等图像。
3. 进行背景色识别完成设置和配置之后,就可以进行背景色识别了。
具体来说,可以使用以下命令:GetColor(int x1,int y1,int x2,int y2,string color):获取指定区域的颜色值。
如果返回的颜色值与目标界面的背景色一致,那么就说明目标界面出现了。
使用示例:GetColor(100, 200, 300, 400, "ffffff")其中,参数x1,y1,x2,y2指定要识别的区域的左上角和右下角坐标,color参数指定要识别的颜色值。
三、背景色识别的优势及应用场景相比于其他的自动化工具,大漠插件的背景色识别功能具有如下优势:1.准确性高:通过对颜色的准确识别,可以实现高度的识别准确度。
2.稳定性好:不受字体、字号、字体颜色等因素的影响,因此不易出现识别错误。
大漠插件后台寻图、主动猎取坐标窗口句柄鼠标多点左单击足本[精品]
大漠插件后台找图、自动获取坐标窗口句柄鼠标多点左单击脚本一、准备工作第一步:下载大漠插件、解压,运行“注册大漠插件到系统.bat”,把全部东东都复制到按键精灵的plugin目录下吧~第二步:创建一个文件夹,以d:\test 为例。
把你要找的图(60.bmp)、大漠插件里的dm.dll 和RegDll.dll复制到这个文件夹。
第三步:打开按键精灵,创建一个新脚本。
往附件(在软件左边框选项)里面添加dm.dll、Reg.dll和图60.bmp二、复制以下代码到按键精灵dim ys1,ys2,ys3,a,b,zbx,zby//自定义变量ys1=9000//1和2点延时ys1=9000//2和3点延时ys1=9000//3和1点延时a=15//纵向下移15单位b=-15//纵向上移15单位zbx=100//获取窗口句柄给定的坐标xzby=100//获取窗口句柄给定的坐标yPutAttachment "d:\test", "*.*" //意思是释放所有附件到d:\test目录。
就是把有用的文件打包到test目录下PutAttachment ".\Plugin", "RegDll.dll" //意思是释放RegDll.dll文件到按键精灵安装目录的Plugin目录下,用来完成大漠插件的注册Call Plugin.RegDll.Reg("d:\test\dm.dll") //调用大漠插件,在按键精灵中使用Set dm = createobject("dm.dmsoft") //用大漠插件创建一个对象dmdm_ret = dm.SetPath("d:\test") // 设置全局路径,以后你找图用的图片都默认是test目录里的图片了,否则你要用绝对路径d:\test\1.bmp来该表示图片dm_ret = dm.LoadPic("*.bmp") // 字面意思是加载test目录下的所有图片Hwnd = dm.GetPointWindow(zbx,zby)//用大漠软件获取给定坐标(zbx,zby)的窗口句柄,保存在Hwnd里Call Plugin.Window.Move(Hwnd, 0, 0) // 把窗口移到屏幕的(0,0),即左上角dm_ret = dm.BindWindow(Hwnd,"gdi","windows","windows",0) //这句用来绑定辅助操作的对象窗口//下面是一条判断语句,如果绑定失败就会提示。
易辅客栈大漠插件命令详解及使用方法
易辅客栈大漠插件命令详解及使用方法
沉睡在地底的笋子知道时间到了,温暖的阳光、新鲜的空气、湛蓝的天空在召唤着它们,春天在召唤着它们。
这是一个绵雨过后的清晨,竹林里雾气弥漫,有些阴森。
不远处,一只野鸡正在觅食,她的孩子们步履阑珊地跟在身后,几只早早冒出地面的笋子已经遭了秧,它们被这经验老道的食客翻了个底朝天,那些包在最深处的笋肉,是山林赐给初春食客们的美味。
一只大胖笋子悄悄地探出脑袋,一阵清风拂过它的头顶,空气湿润,竹林里杯盘狼藉,看着那些叽叽喳喳的小鸡和鸡妈妈熟练的动作,它不由得打了个寒战。
祝你好运,笋子先生。
盛夏的山林更加热闹,聒噪的知了日日夜夜地叫嚷着,林子里的青蛙和蛐蛐儿也想凑个热闹,那些白日里根本无处可寻的娃娃鸡和猫头鹰也不甘示弱,于是高音和低音交相辉映,合奏与独唱连绵不绝,一场长达半年的演唱会浑然天成。
那些活泼的意图求偶的雄性小山雀上蹿下跳,欲用或优美或华丽或夸张的舞姿,博取雌性的青睐,它们也沾了这场演唱会的光,不多时便携着爱侣比翼双飞了。
等着吧,再过不久林子里又会多出许多小生命,它们都是山林的传承者,一群吵闹却可爱的小精灵。
使用大漠的基本流程
使用大漠的基本流程1. 准备工作在使用大漠之前,我们需要先进行一些准备工作。
1.1 安装大漠插件首先,我们需要下载并安装大漠插件。
大漠插件是一个自动化软件工具,可以实现屏幕捕捉、模拟鼠标键盘操作等功能。
可以通过大漠官方网站下载并安装插件。
1.2 注册大漠账号在使用大漠之前,我们还需要注册一个大漠账号。
通过大漠官方网站注册账号,并获取账号的授权信息。
2. 编写脚本一旦安装了大漠插件并注册了账号,我们就可以开始编写脚本了。
脚本是一个文件,在其中编写一系列的指令来实现自动化操作。
下面是一个简单的使用大漠的脚本示例:# 使用大漠脚本示例# 导入大漠插件import win32com.client# 创建大漠对象dm = win32com.client.Dispatch('dm.dmsoft')# 设置插件的路径和授权信息dm.SetPath('大漠插件路径')dm.SetDict(0, '授权信息')# 在屏幕上找到指定的图片,并单击if dm.FindPic(0, 0, 2000, 2000, '图片路径') != -1:dm.MoveTo(dm.GetResultX(), dm.GetResultY())dm.LeftClick()在脚本中,我们首先导入大漠插件,并创建一个大漠对象。
然后,我们设置插件的路径和授权信息。
接下来,我们可以使用大漠提供的各种函数来实现自动化操作。
例如,在屏幕上找到指定的图片,并进行单击操作。
3. 运行脚本编写好脚本后,我们可以进行脚本的运行。
运行脚本分为两种方式:3.1 执行脚本文件将编写好的脚本保存为一个文件,例如script.py,然后通过命令行来执行该脚本。
python script.py3.2 在代码中运行脚本除了执行脚本文件,我们还可以在其他Python代码中直接运行脚本。
例如,我们可以在Python的交互式环境中执行脚本。
按键精灵大漠插件excel操作语句
按键精灵大漠插件excel操作语句一、打开Excel文件1. 打开指定路径下的Excel文件:excel.Open("D:\test.xls");2. 打开当前路径下的Excel文件:excel.Open("test.xls");3. 打开最后一个打开的Excel文件:excel.OpenLast()。
二、读取单元格数据4. 读取指定单元格的文本内容:excel.ReadCellText("Sheet1", "A1");5. 读取指定单元格的数值内容:excel.ReadCellNumber("Sheet1", "B2");6. 读取指定单元格的公式内容:excel.ReadCellFormula("Sheet1", "C3");7. 读取指定单元格的日期内容:excel.ReadCellDate("Sheet1", "D4")。
三、写入单元格数据8. 在指定单元格中写入文本内容:excel.WriteCellText("Sheet1", "A1", "Hello World");9. 在指定单元格中写入数值内容:excel.WriteCellNumber("Sheet1", "B2", 123.45);10. 在指定单元格中写入公式内容:excel.WriteCellFormula("Sheet1", "C3", "=SUM(A1:B2)");11. 在指定单元格中写入日期内容:excel.WriteCellDate("Sheet1", "D4", "2022-01-01")。
大漠卡屏检测命令用法
大漠卡屏检测命令用法1.引言1.1 概述概述部分主要对大漠卡屏检测命令的背景和意义进行简要介绍,引起读者的兴趣并在一定程度上说明本文的价值。
以下是可以写入概述部分的内容:大漠卡屏检测命令是一种用于检测计算机屏幕是否卡顿的工具。
在当前数字化社会,计算机已经成为人们工作、学习和娱乐的重要工具。
然而,随着软件和应用程序的日益复杂,计算机屏幕卡顿的问题也愈发普遍。
这种卡屏现象严重影响了用户的使用体验,甚至损害了工作效率。
为了解决屏幕卡顿问题,促进计算机的正常运行,大漠卡屏检测命令应运而生。
通过使用这个命令,用户可以快速准确地检测到屏幕的卡顿情况,并根据检测结果进行相应的优化和改进。
这不仅可以提高用户的使用体验,还可以提高计算机的工作效率,为用户提供一个更加流畅和高效的工作环境。
本文将详细介绍大漠卡屏检测命令的用法,并结合实例演示其具体操作步骤。
读者将能够了解到如何使用这个命令来判断屏幕是否卡顿,以及如何根据检测结果进行相应的处理。
同时,本文还将通过总结和展望部分,对大漠卡屏检测命令的优化和发展进行一些思考和展望。
总之,大漠卡屏检测命令是一项重要的技术工具,能够帮助用户准确定位和解决计算机屏幕卡顿的问题。
本文旨在详细介绍该命令的用法,帮助读者更好地理解和应用,并对其未来发展提供一些参考。
1.2文章结构文章结构部分的内容应该围绕着整篇文章的组织和框架展开。
可以包括以下几个方面的内容介绍:1.2 文章结构本文按照以下结构进行组织和呈现:引言部分:介绍整篇文章要阐述的主题和目的,即大漠卡屏检测命令的用法。
概述了该命令的作用和重要性,并提供了本文的整体结构。
正文部分:分为两个主要部分,分别是大漠卡屏检测命令简介和大漠卡屏检测命令用法。
- 大漠卡屏检测命令简介:首先介绍了大漠卡屏检测命令的背景和基本概念,阐述了其在解决卡屏问题中的重要作用。
然后详细介绍了该命令的原理和工作原理,包括它是如何检测卡屏问题的、检测的准确性等方面的内容。
用枚举命令获得窗口句柄
今天跟大家说的是绑定窗口的各种方法及适用类型.(以下所有的大漠命令函数名都为dm,大漠调用命令为#import "dm.dmsoft" dm)大漠绑定窗口命令BindWindow(窗口句柄,display,mouse,keypad,mode)(详细的大漠绑定窗口命令函数定义请自行参考大漠帮助文档)首先我们要知道一个窗口的后台操作就一定需要绑定窗口,而绑定窗口就一定需要获取窗口句柄,那么我们应该怎么获取游戏窗口的窗口句柄呢?方法有很多种,大家就要根据需要去选择一种最适合的.(注:每一次打开窗口,窗口句柄都是不同的,并不是窗口标题相同窗口句柄就相同)下面我给大家列举几种最常用的方法并简单分析一下利弊.//绑定窗口方法一:用编辑框来获取窗口标题绑定窗口整型文本长度,窗口句柄,是否成功字符型编辑框内容编辑框内容=编辑框.获得文本("编辑框0")文本长度=字符串.长度(编辑框内容)如果(文本长度==0)辅助.消息框("请输入窗口标题!")否则//窗口句柄=窗口.找到窗口(编辑框内容) //TC命令窗口句柄=dm.FindWindow("",编辑框内容)是否成功=dm.BindWindow(窗口句柄,"normal","normal","dx",0)如果(是否成功==0)辅助.消息框("窗口绑定失败!")否则辅助.消息框("窗口绑定成功!")如果结束如果结束//方法一结束方法一首先要在界面上设置一个编辑框的控件.而当我们要获得一个游戏窗口的窗口句柄就需要把该游戏窗口的完整标题输入到编辑框里(游戏窗口标题可以用AB抓抓获取)比如我们要获取名为1.TXT的记事本窗口的窗口句柄方法一优点:准确率高方法一弊端:一般只适用于单开,不智能,需要手动输入//绑定窗口方法二:用鼠标所在窗口句柄命令获得窗口句柄整型窗口句柄,是否成功//窗口句柄=窗口.鼠标所在窗口句柄() //TC命令窗口句柄=dm.GetMousePointWindow()如果(窗口句柄==0)辅助.消息框("没有找到!")否则是否成功=dm.BindWindow(窗口句柄,"normal","normal","dx",0)如果(是否成功==0)辅助.消息框("窗口绑定失败!")否则辅助.消息框("窗口绑定成功!")如果结束如果结束//方法二结束从命令我们就可以知道,该命令获取的是鼠标所在窗口的窗口句柄.通俗点来说就是鼠标点击在哪个窗口我们获取的就是哪个窗口的窗口句柄.方法二优点:比较智能,可以自动获取窗口句柄,算是最常用的方法方法二弊端:只适用于单开,易出错,比如只绑定子窗口.必须要进入游戏后使用热键开启脚本//绑定窗口方法三:用顶层窗口命令获得窗口句柄整型窗口句柄,是否成功//窗口句柄=窗口.顶层窗口句柄() //TC命令窗口句柄=dm.GetForegroundWindow()如果(窗口句柄==0)辅助.消息框("没有找到!")否则是否成功=dm.BindWindow(窗口句柄,"normal","normal","dx",0)如果(是否成功==0)辅助.消息框("窗口绑定失败!")否则辅助.消息框("窗口绑定成功!")如果结束如果结束//方法三结束方法三类似于方法二,顶层窗口通俗来说就是置顶的窗口,激活的窗口.方法三优点:准确率高,比较智能,可自动获取窗口句柄方法三弊端:只适用于单开,必须要进入游戏后使用热键开启脚本//绑定窗口方法四:用枚举命令获得窗口句柄整型长度,是否成功,窗口句柄,下标,大小字符型[] 数组=字符型[100]//定义一维数组,长度100,我想100开够了吧下标=0//下标起始值为0//字符型句柄=系统.枚举("记事本",0) //TC命令字符型句柄=dm.EnumWindow(0,"记事本","",1+4+8+16)//这句是获取到所有标题栏中有"记事本"这个字符串的窗口句柄集长度=字符串.长度(句柄)//得到窗口句柄集的长度如果(长度==0)//判断如果窗口句柄集的长度为0说明没有找到窗口辅助.消息框("没有找到窗口")否则//如果窗口句柄集的长度不为0说明找到窗口了辅助.消息框(句柄)//从弹出的消息框我们可以看到窗口句柄集的格式为以逗号分隔的数字组// 冷月无痕原创,转载请注明出处,谢谢!联系QQ:305289669字符串.分割(句柄,",",数组)//那么我们用分割命令把窗口句柄集分割并赋值到数组里数组.大小(数组,大小)//得到数组的大小循环(下标< 大小)//使用循环来分别绑定每一个枚举出来的窗口,并定义循环的条件为下标小于数组大小,当下标大于等于数组大小时停止循环)辅助.消息框(数组[下标])//从弹出的消息框我们可以看到数组里的窗口句柄值窗口句柄=转换.字符型转整型(数组[下标],0)//因为数组里的窗口句柄值是字符型的所以这里要转换为整型是否成功=dm.BindWindow(窗口句柄,"normal","normal","dx",0)//绑定窗口,如果(是否成功==0)辅助.消息框("窗口绑定失败!")否则辅助.消息框("窗口绑定成功!")如果结束下标=下标+ 1//这里给下标加一,递增循环结束如果结束//方法四结束方法四优点:比较智能,可以自动获取窗口句柄,多窗口绑定,适用于多开多线程方法四弊端::并不是万能的,也有枚举不出的窗口以上绑定窗口命令图色获取模式为前台,鼠标模拟模式为前台,键盘模拟模式后台当然,获取窗口的方法还有很多,比如类名,进程等,这里就不一一举例了,相信大家可以举一反三灵活运用.注意事项:绑定之后,所有的坐标都相对于窗口的客户区坐标(不包含窗口边框)另外,绑定窗口后,退出脚本前,必须加以下代码,以保证所有资源正常释放,也就是解绑窗口dm.UnBindWindow()另外绑定dx会比较耗时间,请不要频繁调用此函数.另外如果绑定的是dx,要注意不可连续操作dx,中间至少加个10MS的延时,否则可能会导致操作失败.比如绑定图色DX,那么不要连续取色等,键鼠也是一样.注意,图色dx,鼠标windows2 dx dx2以及键盘dx都需要管理员权限才能运行,所以对于WIN7和VISTA用户,在启动目标窗口时,必须用管理员方式启动,否则无法绑定成功!还有一点特别要注意的是,有些窗口绑定之后必须加一定的延时,否则后台也无效.一般1秒到2秒的延时就足够.发现绑定失败的几种可能(一般是需要管理员权限的模式才有可能会失败)1. 系统登录的帐号必须有Administrators权限2. 如果是vista和win7系统,启动窗口进程必须用管理员模式启动,脚本也必须用管理员模式启动.3. 一些防火墙会防止插件注入窗口所在进程,比如360防火墙等,必须把dm.dll设置为信任.4. 还有一个比较弱智的可能性,那就是插件没有注册到系统中,这时CreateObject压根就是失败的. 检测对象是否创建成功很简单,如下代码逻辑型是否成功是否成功=辅助.是否注册("dm.dmsoft")如果(是否成功)辅助.消息框("插件已注册")否则辅助.消息框("创建对象失败,检查系统是否禁用了vbs脚本权限")如果结束5. 在沙盘中开的窗口进程,绑定一些需要管理员权限的模式,会失败。
python大漠接口说明
python大漠接口说明Python大漠接口是一个提供给开发者使用的人工智能接口,可以实现文字识别、语音合成、情感分析等功能。
本文将以人类视角来介绍Python大漠接口的使用方法和相关应用场景。
一、Python大漠接口简介Python大漠接口是一款基于Python语言开发的人工智能接口,它能够实现文字识别、语音合成、情感分析等多种功能。
开发者可以通过简单的代码调用接口,实现对文字、语音和情感等的处理和分析。
二、Python大漠接口的使用方法Python大漠接口使用简单,只需引入相关的库和模块即可开始调用接口。
以文字识别为例,下面是一个使用Python大漠接口进行文字识别的示例代码:```pythonimport damo# 初始化接口dm = damo.Damo()# 读取图片image = dm.read_image('image.jpg')# 调用文字识别接口result = dm.ocr(image)# 输出识别结果print(result)```以上示例代码中,首先需要初始化Python大漠接口,然后读取待识别的图片,并调用接口进行文字识别。
最后输出识别结果。
除了文字识别,Python大漠接口还支持语音合成和情感分析等功能。
开发者只需根据具体需求,调用相应的接口即可实现相应的功能。
三、Python大漠接口的应用场景Python大漠接口具有广泛的应用场景,下面将介绍几个常见的应用场景:1. 文字识别:Python大漠接口可以实现对图片中的文字进行识别,可以用于自动化办公、图像处理等领域。
2. 语音合成:Python大漠接口可以将文字转化为语音,可以应用于语音助手、智能客服等领域。
3. 情感分析:Python大漠接口可以分析文本的情感倾向,可以用于舆情监测、社交媒体分析等领域。
4. 图像处理:Python大漠接口可以实现图像的识别、分割、合成等功能,可以用于图像处理、计算机视觉等领域。
大漠插件 findpic技巧
大漠插件 findpic技巧
大漠插件是一种常用于游戏辅助的软件工具,具有自动捕获屏幕上的任何区域进行截图,并能自动屏蔽截图时的鼠标界面,还具有多图连抓、简单界面操作等特性。
而FindPic是其中的一种功能,主要用于查找图片。
使用大漠插件FindPic功能时,需要注意以下几点技巧:
1. 确保插件版本是最新的,以便获取最新的查找功能和修复可能存在的错误。
2. 在使用FindPic功能之前,先了解该功能的参数设置。
例如,相似度参数sim,取值范围在之间,可以根据需要调整;查找方向参数dir,可以设定为0:从左到右,从上到下,1:从左到右,从下到上,2:从右到左,从上到下,3:从右到左,从下到上等。
3. 在使用FindPic功能时,可以先尝试一些简单的图片查找,以便熟悉该功能的使用方法和参数设置。
4. 如果需要查找的图片较多,可以先对部分图片进行查找,并逐步扩大查找范围,以避免因查找范围过大而导致的查找效率低下。
5. 注意保存和备份查找结果,以免因误操作或其他原因导致数据丢失。
以上是大漠插件FindPic功能的使用技巧,希望能对你有所帮助。
大漠插件字库原理介绍.
首先说明下大漠综合工具制作字库的过程和原理1.截取你所需要的图片2.点击你所需要字的颜色3.点击提取点阵4.输入字符按回车生成字库具体的原理我不好说,但是就我的理解是:对图片中不符合指定颜色的部分去除掉,然后二值化获取点阵,点阵也就是这些颜色的分布规律,二值化就是黑白两色,RGB格式中黑色"000000"白色"ffffff"由于我的脚本在别人电脑上运行的时候经常失效,今天改成16位色后我机器上运行也失效了,而我这个脚本主要采用的就是大漠插件的找字功能,我以为是机器间的色偏造成的,一直想法子算色偏,但是我失败了。
后来我想起论坛上有个帖子专门讲过同色系的RGB格式中R值是不变的(不好意思忘了作者了,在这里致谢)于是我就在大漠综合工具的色偏处输入了00ffff结果是在16位色环境下,大漠综合工具中二值化区域内的字显示的跟我在32位色环境下做的一模一样,接着我提取点阵,制作字库,进行调试,命令格式如下:dm_ret =dm.FindStr(0,0,978,585, "码", "ffd463-00ffff", 1.0, x1, y1)If x1 >= 0 ThenMessageBox x1 & y1End If准确的弹出了x,y的坐标值接着我换32位色做同样的调试,显示结果与16位色下相同,我测了坐标正好是我要找的字的左上角经多次测试发现这个方法中字色的R值必须为FF或00(至于F1,01等未测试,有兴趣的朋友可以试试)庆幸啊以后找字可以不考虑偏色了呵呵再说了考虑我也不会算具体原理我也不是很懂,但是我估计应该是:我比较了点阵中R值相同的所有点,取得符合二值化点阵区域内所有的点造成的再次提醒此方法只适合R值为00,FF的其他位置相同的未测试当然这么做效率是低了点,但是在我看来脚本应该是:稳定性>通用性>执行效率,毕竟脚本也是你编写的一种软件吗鲜花,银币在哪拿来啊呵呵简单说下后台操作的方法,先判断该窗口是否支持后台,用下面的语句:Hwnd=Plugin.Window.Foreground()Hwmd=Plugin.Window.GetkeyFocusWnd()If Hwmd<>0 thenMessagebox "可以"ElseMessagebox "不可以"End if然后把下面的放在脚本开头Hwnd=Plugin.Window.Foreground()Hwnd=Plugin.Window.GetkeyFocusWnd()//下面接自己的代码首先后台一点是要有句柄、这个很简单第一步我们先打开抓抓,接着点击句柄接着把鼠标移到你所要后台的窗口上,按下F8 是否看见当前窗口句柄那里出现一串数字?把它复制下来第二步我们点击图像,在指定窗口句柄那里打钩接着把数字复制进去按下抓图键(Print Screen SysRq) 是否只看见你要后台的的图像呢?对着你所需要的坐标按右键加入点1 记住坐标然后加入到后台鼠标点击里面就行了第三步我们在后台命令中找到鼠标指向窗口点击插入命令是Hwnd = Plugin.Window.MousePoint()第四步我们要进行后台鼠标点击或者后台输入键盘命令是Call Plugin.Bkgnd.LeftClick(Hwnd, 0, 0)在按键看了很多教程关于"多开..."的我看了后回味,似乎都是单线程的,往往新手会问,难道不能让精灵同事做2件事情吗?新手问的其实是问:按键可以多线程后台吗?由此我突然奇想且试验成功.且次试验可将任何的单开后台变为多开后台脚本.如有愚昧的地方指指教了. 作业:设计一个在记事本上后台打字"1"的循环代码要求:能循环多开Hwnd = Plugin.Window.MousePoint()rem aCall Plugin.Bkgnd.KeyPress(Hwnd, 49)Delay 500goto a注:8.0写的如只有7的同学自己翻译不太难的回复后能见教程本帖隐藏的内容需要回复才可以浏览第一步:将禁止脚本重复运行选为否(在是否循环的下面)第二步:设置启动热键为F2(以免与记事本热键冲突)第三步:保存退出(或选调试)第四步:打开第一个记事本文件,鼠标指中按F2,此时可看见后台打的111出现最小化第五步:打开第二个记事本文件,鼠标指中按F2,此时可看见后台打的111出现最小化........此时你如果将多个记事本都打开看他们都在干活呢-------可以无限后台多开-多线程的哦总结:第一步很关键.启示:如果我做的"打1"的脚本换成打怪的呢?本帖隐藏的内容需要回复才可以浏览第1步:什么是后台插件及命令首先我们要明白什么是后台插件以及后台命令,在编辑窗口找到全部命令,找到窗口插件(建议大家可以站内搜一下361插件,下载后放进去,看一下361插件的命令),点开后点击每一条命令仔细看说明,对比每条命令跟前台命令的对应关系,这样我们就可以把对应的前台命令转换为后台命令了。
Call 注册大漠
Call 註冊大漠Dimenv 環境變數控制碼//環境變數,線程裏面要用到.要定義為環境變數ID控制碼字串= ""//****************************** 檢測按鍵,動作***************************************doCall Plugin.Msg.Tips("按Insert鍵綁定,按Delete鍵解綁")Key = WaitKey()// 等待用戶按任何鍵// 下麵是Insert鍵,綁定滑鼠指向的視窗的線程If Key = 45 Then環境變數控制碼= dm.GetMousePointWindow()// 滑鼠指向的視窗// 先判斷,這個控制碼是否在綁定.如果綁定過.不再重複綁定這個視窗位置= Instr(ID控制碼字串, 環境變數控制碼)//Instr函數,作用是:返回"環境變數控制碼"在"ID控制碼字串"中第一次出現的位置。
沒出現就是位置=0// 如果位置=0 就綁定,預防重複綁定TracePrint 位置TracePrint ID控制碼字串If 位置= 0 Then//線程ID=BeginThread(多線程)// 多線程// 按一次Home鍵,就綁定一個視窗多開控制碼= CStr(環境變數控制碼)ID = CStr(線程ID)// CStr函數是把整數轉換成字串類型ID控制碼字串= 控制碼+ "|" + ID + "|" + ID控制碼字串//Call Plugin.Msg.Tips("已綁定,一個視窗")//ElseCall Plugin.Msg.Tips("視窗已經綁定過了,請不要重複綁定")Delay 2500End If//////########################################################// 下麵是按Delete鍵,停止滑鼠指向的視窗的線程ElseIf Key = 46 Then滑鼠指向的控制碼= dm.GetMousePointWindow()// TracePrint ID控制碼字串位置= Instr(ID控制碼字串, 滑鼠指向的控制碼)//Instr函數,作用是:返回"環境變數控制碼"在"ID控制碼字串"中第一次出現的位置。
大漠插件系统
depth 整形数: 系统色深
整形数:
返回值: 0 : 失败
1 : 成功
脚本例子:
dm_ret = Plugin.dm.SetScreen(1024,768,16)
命令名称: SetUAC
命令功能: 设置当前系统的UAC(用户账户控制).
enable 整形数: 取值如下
命令参数:
0 : 关闭UAC
1 : 开启UAC
脚本例子: TracePrint Plugin.dm.GetClipboard()
命令名称: GetDir
命令功能: 得到系统的路径
type 整形数: 取值为以下类型
0 : 获取当前路径
1 : 获取系统路径(system32路径)
命令参数:
2 : 获取windows路径(windows所
在路径)
3 : 获取临时目录路径(temp)
命令名称: dmBeep
命令功能: 蜂鸣器.
命令参数:
f 整形数: 频率 duration 整形数:
时长(ms).
整形数:
返回值: 0 : 失败
1 : 成功
脚本例子: Plugin.dm.dmBeep 1000,1000
命令名称: CheckFontSmooth
命令功能:
检测当前系统是否有开启屏幕字体平滑. <收费功能>
获取当前系统从开机到现在所经历过的 时间,单位是毫秒
返回值:
整形数: 时间(单位毫秒)
t1 = Plugin.dm.GetTime()
dm_ret =
脚本例子:
Plugin.dm.dmFindPic(0,0,2000,2000," test.bmp","000000",1.0,0,x,y)
按键精灵插件工具大漠-大漠注册
按键精灵插件工具大漠-大漠注册// 首先打包dm.dll和RegDll.dll到附件,当然如果你还有其它资源(字库,图片等)也可以一并打包// 这个need_ver作为本脚本需要使用的插件版本. 如果要换插件时,记得更改这个值.need_ver = "4.1336"// 插件需要用到atl系统库,有些XP精简系统会把atl.dll精简掉. 为了防止注册失败,这里手动注册一下atl.dllset ws=createobject("Wscript.Shell")ws.run "regsvr32 atl.dll /s"set ws=nothing// 释放附件>>>>>>>>>>>>>>>>>>>// 这里选择c盘的test _game作为插件的基本目录也就是SetPath对应的目录。
所以所有资源都释放在此目录.PutAttachment "c:\test_game","*.*"// 这里要用到RegDll来注册插件,所以必须释放到Plugin. 但是切记不能把dm.dll释放到Plugin.那会导致插件失效.PutAttachment ".\Plugin" ,"RegDll.dll"// 插件注册开始>>>>>>>>>>>>>>>>>>>// 下面开始注册插件,先尝试用RegDll来注册.这里必须使用绝对路径。
以免有别人把dm.dll释放在系统目录.造成版本错误.Call Plugin.RegDll.Reg("c:\test_game\dm.dll")// 这里判断是否注册成功set dm = createobject("dm.dmsoft")ver = dm.Ver()if ver <> need_ver then// 先释放先前创建的dmset dm = nothing// 再尝试用regsvr32 来注册. 这里必须使用绝对路径。
大漠各个插件说明
大漠各个插件说明1. 无返回值的不能带括号 ,或者说无括号不能带返回值,例如dm.FindStr 0,0,2000,2000,"长安","aaaaa-00000",1.0,intX,intY dm.MoveTo intX,intYdm.LeftClickdm.SetPath "c:\xxxx"dm.SetDict 0,"test.txt"dm.LoadPic "*.bmp"等等,这些都是不需要返回值的,那么不需要加括号,当然,你也可以加括号,但是就必须遵循规则22.有返回值的必须带括号,或者说,有括号必须有返回值,例如dm_ret = dm.FindStr(0,0,2000,2000,"长安","aaaaa-00000",1.0,intX,intY)dm_ret = dm.MoveTo(intX,intY)dm_ret = dm.LeftClick()dm_ret = dm.SetPath("c:\xxxx")dm_ret = dm.SetDict(0,"test.txt")dm_ret = dm.LoadPic("*.bmp")有些函数,是必须有返回值的,那么就必须带括号,比如Ocr函数等ss = dm.Ocr(0,0,2000,2000,"aaaaaa-000000",1.0)4按键多线程调用插件目前来讲,按键的多线程还不够成熟。
尽量少用。
以下是在按键下使用多线程调用插件的一个示例.// 注册部分我就省略了Dim hwndSet dm = createobject("dm.dmsoft")TracePrint dm.Ver()// 主绑定(当然你也可以不要主绑定。
大漠命令——精选推荐
⼤漠命令类型: Idmsoft 0个属性,194个⽅法,标记: {D5ED8B83-6D3D-4699-BFEA-6C3566F087CE}-------------------------------- ⽅法列表 --------------------------------⽅法调⽤格式:〈⽂本型〉对象.⽂本⽅法("Ver")⽅法调⽤格式:〈⽂本型〉对象.⽂本⽅法("GetBasePath")⽅法调⽤格式:〈整数型〉对象.数值⽅法("SetPath",path)参数<1>的名称为“path”,类型为“⽂本型”。
⽅法调⽤格式:〈整数型〉对象.数值⽅法("UnBindWindow")⽅法调⽤格式:〈整数型〉对象.数值⽅法("SetDictPwd",pwd)参数<1>的名称为“pwd”,类型为“⽂本型”。
⽅法调⽤格式:〈整数型〉对象.数值⽅法("UseDict",index)参数<1>的名称为“index”,类型为“整数型”。
⽅法调⽤格式:〈⽂本型〉对象.⽂本⽅法("Ocr",x1,y1,x2,y2,color,sim)参数<1>的名称为“x1”,类型为“整数型”。
参数<2>的名称为“y1”,类型为“整数型”。
参数<3>的名称为“x2”,类型为“整数型”。
参数<4>的名称为“y2”,类型为“整数型”。
参数<5>的名称为“color”,类型为“⽂本型”。
参数<6>的名称为“sim”,类型为“双精度⼩数型”。
⽅法调⽤格式:〈整数型〉对象.数值⽅法("FindStr",x1,y1,x2,y2,str,color,sim,x,y)参数<1>的名称为“x1”,类型为“整数型”。
大漠组合键命令
大漠组合键命令
大漠组合键命令是一种用于大漠插件的快速操作方式,可以在编写自动化脚本时提高效率。
以下为一些常用的大漠组合键命令:
1. 组合键按下:
- `keyDown`:按下组合键;
- `keyDownChar`:按下组合键对应的字符。
2. 组合键松开:
- `keyUp`:松开组合键;
- `keyUpChar`:松开组合键对应的字符。
3. 组合键操作:
- `keyPress`:执行一次组合键按下和松开操作;
- `keyPressChar`:执行一次组合键字符按下和松开操作。
4. 示例:
- `keyPress(0x11, 'S')`:同时按下Ctrl键和S键;
- `keyPress(0x11, 0x53)`:同时按下Ctrl键和S键(使用十六进制代码);
- `keyDownChar(0x41)`:按下A键;
- `keyPressChar(0x41)`:同时按下并松开A键;
- `keyUp(0x11)`:松开Ctrl键。
请注意,组合键命令需要配合传统的按键命令一起使用,例如
`keyDown`、`keyUp`等。
具体使用方式可以参考大漠插件的官方文档或示例代码。
易语言调用大漠
还有一小时下班,没事做,教童鞋们在易裡用大漠插件,嘿嘿,好多童鞋都不会怎么用,回答也累啊,没办法,普及一下咯,看图!第一步,下载大漠,必须的!第二步,注册DLL文件,必须的,很多种方法!这是大漠自带的,很好用,注册的时候一定要dm.dll, regdll.dll, 注册大漠插件到系统.bat ,这三个文件一定要在同一个目录下,很多童鞋就知道,以为只有注册大漠插件到系统.bat 点击就行了,好用的插件也有让人蛋疼的地方,要留意!用regsvr32来注册,开始菜单,运行!Regsvr32是命令,后面的是你的DLL的文件路径,这个路径里一定要有这个DLL文件,不然当然是不行滴咯!重点来了,打开易语言点工具菜单的类型库或OCX组件-支持库,打开就懂了,0.0在弹出的对话框中选注册类型库找到dm.dll然后打开,会有个提示好咧,到这里易语言还是没有大漠支持库了,往下看找到Dm 版本1.0,然后单击下一步其实这是易官方的一个只有几分钟的教程,很多同学就是不愿意去看,哎,伸手党太多了!点击保存为NPK文件 ,再将NPK文件放到易程序目录的LIB文件夹里,然后配置支持库!如果要汉化,那你就一个一个函数的汉化呸,当然,很累的,但为了童鞋们,我也是汉化了一个啊,看我论坛的帖子咯支持库有了哈哈,问题又来了,很多童鞋就说了,这个怎么用啊,很明显是易的基础都没打好的童鞋,郁闷!创建一个窗口程序,插入一个变量,这个变量的数据类型我们打上大漠插件,注意,这裡是你保存NPK 文件的时候写的是啥就是啥,不一定是大漠插件这个数据类型的,我写的是大漠插件,所以数据类型也是大漠插件! 看下图这里,懂点易的就飘过吧,这里是普及教程!好了,这下可以用了,参数自己看大漠接口说明填就是了!总结了一下,要注意的有以下几点!不是所有的函数易都可以调用,比如某些函数易是用不了的,大漠接口说明说得很清楚,这个要注意!还是有些问题,,,为啥在我的电脑上能用,发给别人用不了我写的软件呢?,简单解决办法如下:打开易语言,选择工具,中的系统配置,选择通过名称為“ _启动子程序”的子程序来启动!然后在 _启动子程序中写初始化代码:还有就是不管对方是否注册了大漠,都需将插件文本写到自己的程序目录下,我也不知道啥原因,有些机子程序目录下没插件文件在他就运行不了,额,有待研究哈,好了,有空再聊聊,就到这里啦!。
易语言聊聊我跟大漠插件的恩怨情仇
易语⾔聊聊我跟⼤漠插件的恩怨情仇在初学易语⾔的时候,我就学习了⼤漠插件。
因为我是偏向营销⼯具开发才学习的编程,所以那时候的想法很简单,如果其他技术搞不定了,那就直接写个脚本模拟操作好了。
⼤漠插件的是英⽂的,对于当时的我来说⽤起来真的很困难。
于是四处找中⽂版。
那时候资源确实匮乏,⼀个中⽂版本都没有,偶尔找到⼀个封装好的模块,也是英⽂版。
于是,我就萌⽣翻译⼤漠的想法。
因为考虑到以后可能会经常⽤到。
恰巧⼤漠迎来了最后⼀个免费版本3.12。
于是查阅各种资料,学习怎样封装dll为模块,对照⼤漠的⼿册,⼀个命令⼀个命令的编译了⼀款属于⾃⼰的中⽂⼤漠模块。
⼀转眼,七⼋年过去了,现在世⾯上应该有不少中⽂⼤漠模块了。
⽽我⾃⼰写的,也在⼀次次装机中不知道哪去了……估计找不到了……在这些年⾥,只出现过⼀款破解版的⼤漠,好想是5.X哪个版本。
其他所谓的破解版,应该都有暗桩啥的,破解的不完美。
反正我没有使⽤过,不搞游戏脚本,免费版已经够⽤了。
⼤漠现在应该出到了7.X版本,⽽且越来越低调,仅对⾼消费⽤户开放。
据我了解,作者也是⽆奈之举。
因为游戏的反作弊越来越厉害,⼤漠⼜是主流插件。
所以针对⼤漠的检测⾮常厉害。
⼤漠要想做到反检测,就要做到插件的独⼀⽆⼆性。
你不可能针对每个⼈都做成独⼀⽆⼆的吧。
所以,直接对消费1000元以上的⽤户直接DIY定制插件,以达到反检测。
今天⽆聊,回看了⼀下⼤漠的说明⼿册。
发现当年觉得超级多,超级⾼深的命令,其实也就那么⼏条。
逻辑也很简单。
重点就在于BindWindow绑定窗⼝时的模拟⽅法。
以什么⽅式发送消息和以什么⽅式找⾊。
对于建⽴字库,图库,答题,orc啥的就是⿇烦⼀些,但是都还能搞定。
关键就是消息穿透的问题。
只要能穿透,就没问题,穿不透,就完蛋。
以前,我以为游戏检测消息,后来才知道。
⼈家都是驱动级模拟了,还识别个啥啊~~游戏识别的是重复雷同的操作,和软件本⾝。
刚看了看最新版本的⼤漠,确实加了不少新的功能。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
//获取鼠标指向的窗口句柄,可以获取到按键自带的插件无法获取到的句柄
hwnd = dm.GetMousePointWindow()
/////-------------------------------------------------------------------------------------------------------------///////////////////------------------------------------------------------------------------------------------------------------------------
////---查找指定区域内的图片
dm_ret = dm.FindPic(0,0,2000,2000,"1.bmp|2.bmp|3.bmp","000000",0.9,0,intX,intY)
If intX >= 0 and intY >= 0 Then
MessageBox "找到"
////获取窗口客户区域的宽度和高度
示例:
dm_ret = dm.GetClientSize(hwnd,w &",高度:"& h
/////-------------------------------------------------------------------------------------------------------------///////////////////------------------------------------------------------------------------------------------------------------------------
ee = dm.GetWindowClass(hwnd) /////////------>>获取窗口的类名<<-------------------------
/////-------------------------------------------------------------------------------------------------------------///////////////////------------------------------------------------------------------------------------------------------------------------
//---按住指定的虚拟键码
////--注意这是按住,不放的,千万别用错----------
dm.KeyDown 13--注意这是按住,不放的,千万别用错----------
/////-------------------------------------------------------------------------------------------------------------///////////////////------------------------------------------------------------------------------------------------------------------------
dm.MoveTo intX,intY
/////-------------------------------------------------------------------------------------------------------------///////////////////------------------------------------------------------------------------------------------------------------------------
////双击鼠标左键
dm.LeftDoubleClick
////-----------------------------------------------------------------------------------------------------------------//////////-----------------------------------------------------------------------------------------------------------------
tt = dm.GetWindowTitle(hwnd) /////////------>>获取窗口的标题<<-------------------------
TracePrint "窗口的标题=" & tt
/////-------------------------------------------------------------------------------------------------------------///////////////////------------------------------------------------------------------------------------------------------------------------
/////////--大漠创建一个对象--------
set ws=createobject("Wscript.Shell")
/////-------------------------------------------------------------------------------------------------------------///////////////////------------------------------------------------------------------------------------------------------------------------
///////把鼠标移动到目的点(x,y)
dm.MoveTo x,y
/////----------------------------------------------------------------------------------------------------------------------/////////////////////////////////////////////---------------------------------------------------------------
///按下指定的虚拟键码
dm.KeyPress 13
/////----------------------------------------------------------------------------------------------------------------------/////////////////////////////////////////////-------------------------------------------------------------------------------------
End If
/////-------------------------------------------------------------------------------------------------------------///////////////////------------------------------------------------------------------------------------------------------------------------
////按下鼠标左键
dm.LeftClick
/////--------------------------------------------/////////////////------------------------------------------------------//////////---------------------------------------------------------------------------------------------------------------------
//////-----下面是,多点找色代码--------------------------------------------------
////-------根据指定的多点查找颜色坐标--------------
dm_ret = dm.FindMultiColor(0,0,2000,2000,"cc805b-020202","9|2|-00ff00,15|2|2dff1c-010101,6|11|a0d962,11|14|-ffffff",1.0,1,intX,intY)
/////按住鼠标左键
dm.LeftDown
////-----------------------------------------------------------------------------------------------------------------//////////-----------------------------------------------------------------------------------------------------------------