收藏 分享(赏)

Ksend_V1.7帮助文档.doc

上传人:scg750829 文档编号:7134739 上传时间:2019-05-06 格式:DOC 页数:27 大小:747KB
下载 相关 举报
Ksend_V1.7帮助文档.doc_第1页
第1页 / 共27页
Ksend_V1.7帮助文档.doc_第2页
第2页 / 共27页
Ksend_V1.7帮助文档.doc_第3页
第3页 / 共27页
Ksend_V1.7帮助文档.doc_第4页
第4页 / 共27页
Ksend_V1.7帮助文档.doc_第5页
第5页 / 共27页
点击查看更多>>
资源描述

1、Ksend 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 1 页, 共 27 页Ksend V1.7帮助文档1 概述 22 新增特性 32.1 窗口信息功能增强 32.2 IE页面分析功能 32.3 TCL扩展命令 43 实现机制 54 使用介绍 64.1 批语句发送功能 64.2 TCL语言发送功能 94.3 鼠标/键盘捕获和回放功能 124.4 窗口信息 164.5 网页分析 175 TCL扩展语法说明 206 其他说明 237 应用举例 247.1 多telnet自动登录 .247.2 批量路由添加 247.3 自动计算器 257.4 WEB自动登录 .26K

2、send 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 2 页, 共 27 页1 概述Ksend是一个自动化工具,可以应用于自动化测试、设备维护等领域,它可以模拟后台文本消息的发送、模拟键盘和鼠标动作、并能进行简单的windows界面、IE页面的分析和控制等。Ksend的主要功能: 文本发送功能:将文本分行发送至指定的一个或多个文本窗口,可以控制发送的延时; 支持键盘、鼠标的录制和重放; 支持TCL语言控制,可以利用TCL 语言控制键盘、鼠标、界面及文本的发送; 可以利用TCL语言分析、捕获和控制窗口; 支持IE页面的分析和控制;应用场景:命令行维护、测试:可以通过

3、TCL语言或批语句将维护或测试命令发送到telnet终端、DOS窗口、串口终端等窗口,实现自动化的配置和维护。比如添加10000条路由、10000条ACL等参数遍历的维护和测试;可以进行局域网地址的连通性遍历测试;可以用于设备的批量升级维护等等。界面维护、测试:可以利用程序中扩展的TCL语句对界面进行控制,比如在WEB界面添加1000个用户、自动发送Notes邮件等等。Ksend 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 3 页, 共 27 页2 新增特性2.1 窗口信息功能增强增加对combox、listbox、listview、treeview窗口的内容捕获

4、功能,在 “窗口信息”页面,如果捕获的类型是上述的页面,则可以显示页面的内容:上图显示的是浏览器中捕获的信息,窗口类型为listview,行数为8行,列数为4列,各列之间以TAB键隔开。2.2 IE 页面分析功能增加对IE页面的分析功能,由于IE页面与普通的windows界面存在着很大的差别,需要特别处理:Ksend 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 4 页, 共 27 页2.3 TCL 扩展命令增加如下TCL扩展命令:1、 Window界面控制tcombo: Combox控件(下拉框)中的条目选择tlistbox: ListBox控件(列表框)中的条目

5、选择tlistview:ListView控件(报表框)中的条目选择wclose:关闭相应句柄的窗口tbmp:桌面截图,保存为文件2、 IE界面控制iopen:打开指定的网址iset:设置页面元素中的信息iclick:链接、按钮点击iget:获取页面元素中的信息iselect:选中/去选单选框、复选框3、 其他增强krec、trec、krecf、trecf命令,使其能够获取combox、listbox、listview、treeview 窗口控件的内容。Ksend 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 5 页, 共 27 页3 实现机制Ksend的一个重要功能

6、是向各windows 窗口发送文本字符,实现这个功能有两种方式,一种是windows的消息传递,另一种是键盘模拟。消息传递是通过PostMessage 函数在Ksend 程序和目标窗口程序之间进行文本消息的传递,这种方式不会占用键盘事件,因此在这种方式下,用户可以在发送文本的同时进行其他鼠标和键盘操作,比如在Ksend发送时可以正常的写Word文件,收发Notes邮件等,对用户没有影响。键盘模拟方式是模拟用户的键盘输入,使用这种方式的原因是因为有些界面、控件(如WEB中的输入框)无法用Ksend进行捕获,无法进行消息传递,只能使用键盘进行模拟输入,此种方式会占用键盘事件,在文本模拟输入过程中,

7、如果用户进行界面、键盘、鼠标操作,将会影响输入的内容。Ksend中同时存在上述两种实现方式,其中采用消息传递方式的有: 批语句发送功能; TCL扩展语句中的大多数语句:tsend、tput、tout、ksend 、ksendkey 、krec、trec、trecf、 krecf、crecf、win、gettop、findw、findcw 、getmtext 、getmhwnd 、getmhwndxy、getmtextxy、tsendkey、buttondown、winclose、winwaitopen 、winwaitclose 。非消息传递方式或会影响用户当前操作的语句有:键盘、鼠标模拟语句

8、和一些扩展的TCL语句。扩展TCL语句: settop:将某个窗口置顶 msgbox:显示对话框鼠标模拟语句: mouse_ld:鼠标左键按下 mouse_lu:鼠标左键松开 mouse_rd:鼠标右键按下 mouse_ru:鼠标右键松开Ksend 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 6 页, 共 27 页 mouse_md:鼠标中键按下 mouse_mu:鼠标中键松开 mouse_lclick:鼠标左键单击 mouse_rclick:鼠标右键单击 mouse_mclick:鼠标中键单击 mouse_dbclick:鼠标左键双击 mouse_move x

9、y:鼠标移动至屏幕坐标 x,y处 mc_move 窗口句柄 x y:鼠标移动至窗口内坐标x,y处键盘模拟语句: key_press keycode:键盘按键一次,keycode为键盘码( 1254) key_down keycode:键盘按下,不松开 key_up keycode:键盘松开 key_send 字符串:向当前窗口输出字符串Ksend 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 7 页, 共 27 页4 使用介绍4.1 批语句发送功能程序打开的界面如上,分为三栏:配置、批语句、发送。配置栏用于批量语句的自动生成,比如要向DOS窗口发送“ping 192

10、.0.0.1” “ping 192.0.0.254”等254条语句,如果一个一个输入的话效率很低,此时可以用配置功能生成,在“初始语句”栏输入“ping 192.0.0.(*)”,在“处理”一栏选第2个选项,替换符从1到254,然后点批语句栏中的“语句生成”按钮,就会在批语句文本框中生成所需要的字符串。Ksend 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 8 页, 共 27 页在初始语句中可以输入多行,比如需要在ping 语句后执行tracert 命令,则在初始语句中输入“ping 192.0.0.(*)”和“tracert 192.0.0.(*)”两条语句,通

11、过上下键盘可以切换语句,然后点语句生成,结果如下图所示:如果不需要语句生成功能,可以直接在批语句的文本栏输入要发送的语句,或者可以从文件中读取,也可以将批语句文本栏的文本存盘。批语句输入后,需要将语句发送到相关的窗口,这时需要对目标窗口进行手工捕获,捕获的操作方式为拖动下图中的放大镜图标到相应的窗口即可:具体操作:在放大镜图标上按住鼠标左键,鼠标图标会变为放大镜图标,此时不要松开鼠标,移动鼠标到目标窗口上(比如DOS窗口),然后放开鼠标,就会将此时鼠标下方的窗口捕获。在鼠标移动的过程中,鼠标下方的窗口边框会高亮显示,并且可以看到程序标题栏也会发生变化,它指示的是当前鼠标下的窗口句柄:另外鼠标移

12、动过程中还有一个变化的地方是“窗口捕获”栏的颜色和“开始发送”按钮下的文本,它指示的是当前鼠标位置的颜色和具体的十六进制数值,利用此功能可以获取屏幕上的颜色值:如上图表示当前鼠标指向的颜色为深蓝色,蓝色分量数值是0xA5,绿色分量数值是0x49,红色分量数值是0x42。窗口捕获后,会将捕获的窗口显示在“发送窗口列表”当中:Ksend 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 9 页, 共 27 页如果想将文本同时发往多个窗口,需要选择“多窗口发送”选项,再按上面的方法进行多个窗口的捕获。所有窗口捕获后,可以设置每行的发送间隔时间和每个字符间的间隔时间(有些窗口如

13、超级终端反应较慢,字符发送太快会出现丢字符的现象,因此需要设置字符间的间隔时间),然后点“开始发送”按钮进行文本的发送。在发送过程中可以点“停止”按钮停止发送,停止按钮和开始发送按钮为同一个按钮。如果要去除已捕获的窗口,只需在发送窗口列表中点右键,就会有相应的菜单处理:其他选项:自动回车/换行:在发送一行后是否自动发送回车/换行符总在最顶层:保持ksend在windows的最上层,不被其他窗口覆盖,此选项对所有的页面(TCL页面、键盘鼠标页面等)都有效,在某些情况下,需要去除此选项。循环:对生成或读取的语句进行循环发送使用说明:批语句发送功能的帮助按钮*如果用户想对延时时间进行单独的控制,可以

14、使用delay语句:可以通过在批语句中添加#delay 命令人工增加延时,#delay语法:#delay 延时的毫秒数毫秒数的有效范围为160000,即最多可延时一份钟。例如延时1秒钟的语句为:#delay 1000Ksend 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 10 页, 共 27 页4.2 TCL 语言发送功能使用批语句进行文本的发送有很多不灵活的地方,比如要发送从110000的数字,就必须先构造出相应的文本;一些非文本的控制符(如F1、CTRL、ALT等)也无法发送;还有就是发送前必须捕获相应的窗口等等,而使用TCL语言控制就可以解决上述的问题。TC

15、L语言发送界面如下:TCL语言发送界面也分为三栏:TCL 语言窗口、执行窗口、发送窗口。TCL语言窗口用于编辑TCL脚本,TCL语言的关键字和扩展命令的关键字在窗口中会以红体字显示,注释语句以#字符开头,显示为蓝体字,扩展TCL命令的帮助在“语法说明”按钮页面中列出。用户可以对编辑的TCL语言文件存盘,也可以读入原来存盘的TCL文件。“使用举例”按钮页面中有一些常用脚本的例子,对于不太熟悉TCL语法的用户可以进行参考,快速入门,其实语法还是比较简单的。TCL语言是一种脚本描述语言,在 TCL语言执行前不会对 TCL语句进行编译,因此如果有几条 TCL语句,其中有一条存在错误,那么在此条错误语句

16、之前的 TCL语句会被执行,在错误语句处 TCL执行会停止。执行窗口栏用于显示语句发送时的信息(tsend、tput等语句)以及TCL 语法错误提示等。Ksend 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 11 页, 共 27 页发送窗口栏与批语句发送的功能基本一致,不过与批语句发送不同的是,批语句发送必须将目标窗口捕获到发送窗口列表当中,但TCL语言发送可以通过语句直接发送到目标窗口,比如使用“ksend”语句,它的语法是 “ksend 目标窗口句柄 字符串”,目标窗口的句柄可以通过移动“窗口捕获”栏中的放大镜图标到目标窗口处得到:然后通过ksend语句发送,

17、比如 “ksend 66944 test123”。也可以通过findw、findcw语句搜索窗口标题得到,比如下面的TCL语句:先通过findw语句寻找窗口标题中含有 “记事本”字符的窗口,然后将窗口的句柄存入变量i,再在此窗口中通过findcw语句寻找子窗口类型为“Edit”的子窗口,将子窗口的句柄存入b变量,然后通过ksend语句将字符串 “test123”发送给子窗口。*需要注意的是,用“ksend” 语句发送字符时,窗口句柄应该为窗口内可输入控件的句柄(上例在变量b中),而不是整个窗口的句柄(变量i),子窗口的类型可在第4个页面“窗口信息”中查询或直接用窗口捕获功能查询。另外关闭再打开

18、同一个程序,其窗口句柄是Ksend 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 12 页, 共 27 页会发生变化的。TCL语句编辑完成后,可以点“执行发送”按钮进行TCL命令的执行,在执行过程中可以点“暂停/恢复”按钮来控制执行的过程,也可以点停止发送按钮来中断执行过程。另外在TCL语言发送窗口还增加了一些选项,具体作用如下: “执行前最小化”:因为Ksend的TCL 语句可以控制键盘和鼠标操作,有时ksend自身的界面会对程序的执行造成干扰,选中此选项可以在TCL执行前会将ksend自身的界面最小化。 “执行时禁止屏保”:选中此选项在TCL执行过程中会禁止系统

19、的屏幕保护,以免影响TCL语句执行,在长时间运行时有用,TCL 执行完毕后,会自动恢复系统的屏幕保护设置。 “窗口列表”:当前系统的窗口名及句柄列表。 “快捷键”:在一些长时间的键盘、鼠标模拟过程中,如果中途想暂停或中止模拟是一件比较困难的事,尤其是键盘、鼠标模拟动作比较频繁的时候,这时,我们可以通过快捷键暂停或中止TCL语言的执行。缺省的“执行/停止”快捷键是“F2 ”,“暂停/恢复”快捷键是“F3”,用户可以自己进行修改设置。*TCL语言模拟键盘和鼠标功能可以手工编写,也可以从屏幕录制中导入(在第3个页面“鼠标/键盘信息中”),一些键盘的键值和鼠标的定位位置也可以在第3个页面获得。TCL发

20、送字符间隔的延时时间和批语句发送的字符间隔时间一致。具体的TCL扩展命令(包括语句发送、键盘/鼠标模拟、界面控制等)请参考本文的第 4节。4.3 鼠标/键盘捕获和回放功能键盘、鼠标模拟一般用于界面方面的维护和测试,或者应用于一些无法使用消息传递机制的场合。其功能界面如下:Ksend 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 13 页, 共 27 页功能界面分为两块:鼠标定位和键盘码对照。键盘码对照主要应用在如下几个TCL扩展命令:tsendkey、ksendkey、key_press 、key_down 、key_up它们都需要以键盘码作为命令的参数。其中tse

21、ndkey、ksendkey 为消息传递机制,key_press、key_down、key_up为键盘模拟机制。鼠标定位栏中有“录制”按钮,点此按钮进行鼠标和键盘(包含了对键盘的录制)的录制,录制时,ksend界面缩小为屏幕右下角的一个小框:在框中会实时显示鼠标当前的位置,此位置值可以用于“mouse_move”扩展命令。点击停止后,录制的键盘和鼠标动作会在界面左边显示:此时点“脚本生成”按钮,会将键盘和鼠标动作转换为TCL语言格式:Ksend 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 14 页, 共 27 页点击“拷贝至TCL窗口”按钮,则会将脚本拷贝至第二个

22、页面(TCL语言发送),用户可以对脚本进行编辑、优化、执行,比如上面录制的是一个【鼠标点击windows开始菜单,然后输入“CMD”命令】的脚本。在录制时,键盘是单个字符捕捉的,即按“CMD”三个键需要6个动作:按下键盘C、松开键盘C 、按下键盘M、松开键盘M、按下键盘D 、松开键盘D,中间还有延时语句。我们可以对上面的脚本进行优化,将按“CMD”的动作用key_send语句完成:“key_send CMD”。key_send 是模拟键盘发送字符串的扩展命令。另外鼠标的点击动作也是分解的(先鼠标按下,再鼠标松开),我们可以将它用mouse_lclick(鼠标左键单击)命令合并,最后优化的脚本如

23、下:Ksend 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 15 页, 共 27 页如果想循环上述操作,只需要将上述语句放入for语句循环中即可。编辑完成后,可以点TCL界面的“执行发送”按钮进行键盘和鼠标的模拟。键盘、鼠标动作录制完成后,也可以用“回放”按钮进行动作的简单回放操作。功能界面上还有一个“细节捕获” 选项,去掉此选项后,程序只捕捉鼠标单击和键盘单击操作,这样脚本量会大大减少,但对于一些复杂操作比如按住鼠标选中一段文本,按Ctrl+C组合键复制文本等动作会被遗漏。由于上述的输入CMD命令的操作比较简单,我们可以去除“细节捕获”选项,其录制的结果如下:K

24、send 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 16 页, 共 27 页可以看出,其脚本量相对于前次录制的脚本量大大减少。键盘、鼠标模拟时,延时是一个比较关键的参数,太短的延时可能会导致错误,延时通过after语句完成,延时单位为毫秒,如“after 1000”表示延时1秒钟。4.4 窗口信息窗口信息功能主要用于分析窗口和子窗口中的控件信息,为“findw”、“findcw ”等窗口扩展命令服务,其功能界面如下:首先拖动“窗口捕获”中的图标选择目标窗口,选中的窗口边框会高亮显示,放开鼠标后,会显示窗口内的子窗口标题和类型,子窗口类型值可以在“findcw”命

25、令中应用。上图中的窗口信息显示的是windows记事本的窗口信息,可以看出,它包含了两个子窗体,一个为Edit类型,就是我们平时输入文本的地方,一个是msctls_statusbar32 类型,即记事本的状态栏;需要注意的是,如果要用“ksend”的命令发送文本字符到记事本窗口,句柄应该为Edit控件的句柄(上面为394254),而不是记事本窗口的句柄(459784)。另外如果关闭记事本再重新打开,窗口句柄是会发生变化的。另外此功能界面还有一些附加功能,如更改窗口标题和属性等等。当捕获的窗口类型为Combo、 Listbox、Listview、Treeview时,子窗口列表中会显示这些窗口中的

26、条目内容:Ksend 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 17 页, 共 27 页4.5 网页分析一个WEB页面是由一系列的WEB元素组成,WEB 元素包括了我们常见的URL链接、输入框、表单、按钮、文本等等。每一个元素都有其独特的标识和属性,当我们想通过程序操作WEB元素时,首先要做的是WEB元素识别。一些常见WEB元素的属性如下:链接: 链接测试复选框: 单选框: 下拉框: Test1 Test2 Test3 列表框:测试1测试2输入框: 按钮: 表单: Ksend 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 18 页,

27、共 27 页上面的红体字部分表示了页面元素的类型,比如“href ”就表示此页面元素是一个链接,“radio”则表示此元素是一个单选框。蓝体字部分表示的是识别此页面元素的ID或名字,假如一个页面中有多个输入框,要区别每个输入框,我们就需要通过输入框的名字或ID来进行区分,如:“name = “typeinme“”。查看元素属性的一个方法是查看WEB页面的源代码(IE菜单“查看”“源文件”),但效率较低,ksend的页面分析功能提供了一个更简单的方法来获取各个元素的属性。比如我们需要对百度的网页进行分析:选取Ksend 的“ 网页分析”,拖动放大镜图标到百度的输入框上,在Ksend 界面会显示如

28、下信息:Ksend 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 19 页, 共 27 页输入框的属性为“”,再将图标拖动到搜索按钮上,可以显示按钮属性为“”。在图标移动过程中,元素信息可以根据鼠标所指的元素动态更新。我们也可以修改页面上的元素属性,比如我们可以将“百度一下”按钮改名,在元素内容一栏,将“”改为“”,然后点“修改内容”按钮,页面就变成如下图形:在捕获了WEB页面后,可以对页面进行一定程度的处理,比如使WEB页面可编辑、获取页面上的所有URL链接、设置页面背景色等等。说明:1、Ksend 的网页分析功能只针对IE浏览器有效。2、当我们想通过TCL扩展语

29、法对WEB元素进行操作时,需要先捕获或查找WEB页面,一个WEB窗口的属性是“IEFrame”(可以通过Ksend的“窗口信息”查看),但真正的WEBKsend 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 20 页, 共 27 页页面是其中的子窗口“Internet Explorer_Server”,所以我们要捕获的是类别为“Internet Explorer_Server”的页面句柄,而不是“IEFrame”的句柄。捕获方法1:#先通过窗口标题找到WEB窗口set i findw “Huawei WebMail”#再在WEB窗口中查找子窗口set p findc

30、w $i “Internet Explorer_Server“puts $pp就是我们要找的WEB页面句柄3、在WEB页面中的下拉框、列表框与其他的页面元素不一样,它们是有自己的句柄的,其控件类型分别为“Internet Explorer_TridentLstBox”、“ Internet Explorer_TridentCmboBx”,对它们需要和普通windows控件一样进行处理(如用tcombo控制选择条目)。4、目前暂不支持Frame格式的嵌套页面。5 TCL 扩展语法说明TCL扩展命令语法如下:表 1 字符串发送、处理命令命令格式 命令举例 命令说明tsend 字符串 tsend “

31、Hello World!” 发送字符串到捕获的窗口和执行窗口。如果字符串中无空格,则不需要引号。tsendkey 键盘码 tsendkey 112 发送键盘到捕获的窗口和执行窗口。举例中是发送的“F1”按键。tput 字符串 tput test123 只向执行窗口发送语句,用于调试。tout 字符串 tout test123 只向捕获的窗口发送语句。ksend 窗口句柄 字符串 ksend 66820 Hello 向指定的窗口发送字符串。ksendkey 窗口句柄 键盘码 ksendkey 31134 112 向指定的窗口发送键盘按键。trec set j trec 获得窗口列表中第一个窗口中

32、的文本(窗口类型可以为edit、combox、listbox、listview、treeview等类型)。举例中将获得的文本存入变量j当中。krec 窗口句柄 set j krec 718 获得指定窗口中的文本。举例中将窗口句柄为Ksend 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 21 页, 共 27 页718的窗口内容存入变量j中。trecf 文件名 trecf c:aa.txt 获得窗口列表中第一个窗口中的文本并存为文件。举例中将文本存入C盘根目录的 aa.txt文件krecf 窗口句柄 文件名 krecf 718 a.txt 获得指定窗口中的文本并存为文

33、件。举例中将窗口句柄为718中的文本存入当前目录的a.txt文件crecf 文件名 crecf aa.txt 将系统粘贴板的内容存为文件。表 2 界面控制命令命令格式 命令举例 命令说明win 命令名称 win cmd 执行windows命令。举例:执行CMD命令。gettop set i gettop 获得当前激活(最上层)窗口的句柄。举例:获得当前激活窗口的句柄并保持在变量i中settop 窗口句柄 settop 718 设置指定句柄的窗口激活(最上层)。举例:设置窗口句柄为718的窗口变为最顶层findw 窗口标题 set i findw 记事本 搜索指定标题的窗口,返回窗口句柄。举例:

34、搜索窗口标题中包含“记事本”的窗口,并将句柄保持在变量i中,如找不到则返回-1findcw 窗口句柄 子窗口类型 子窗口序号set i findcw 31122 Edit 搜索指定的子窗口,返回子窗口句柄。举例:#在窗口31122中查找类型为Edit的控件,并将句柄放入变量i,如找不到则返回-1。如果有多个相同类型的控件,用序号加以区别,序号从0开始编号getmtext set i getmtext 获取当前鼠标位置的文本。举例:获取鼠标位置处的文本并存入变量igetmhwnd set i getmhwnd 获取当前鼠标位置的句柄。getmtextxy 鼠标X坐标 鼠标Y坐标set i get

35、mtextxy 112 98 获取指定鼠标位置的文本。举例:获取鼠标(112,98)位置处的文本并存入变量igetmhwndxy 鼠标 X坐标 鼠标Y坐标set i getmhwndxy 112 98 获取指定鼠标位置的窗口句柄。buttondown 按钮句柄 buttondown 33112 要求指定的按钮进行单击操作。举例:要求句柄为33112的按钮进行单击操作。msgbox 对话框内容 对话框标题 对话框样式set i msgbox 是否现在启动程序? 提示 4对话框的样式为050:只有确定按钮1;有确定和取消按钮2:有中止、重试、忽略按钮3:有是、否、取消按钮4:有是、否按钮5:有重试

36、、取消按钮msgbox的返回值为070:异常返回Ksend 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 22 页, 共 27 页1:用户按下了确定按钮2:用户按下了取消按钮3:用户按下了中止按钮4:用户按下了重试按钮5:用户按下了忽略按钮6:用户按下了“是 “按钮7:用户按下了“否 “按钮举例:显示提示对话框,并将用户的选择赋值给变量i。winwaitopen 窗口标题 winwaitopen 记事本 等待指定窗口标题的窗口出现。举例:等待标题为“记事本“的窗口出现,如不出现则一直等待。winwaitclose 窗口标题 winwaitclose 记事本 等待指定

37、窗口标题的窗口关闭。举例:等待标题为“记事本“的窗口关闭,如不关闭则一直等待。winclose 窗口标题 winclose 记事本 关闭指定窗口标题的窗口。举例:关闭标题为“记事本“的窗口,返回 -1为未找到此窗口或关闭错误。wclose 窗口句柄 winclose 12231 关闭指定窗口句柄的窗口。举例:关闭窗口句柄为12231的窗口tbmp 文件名 tbmp c:test.bmp 将当前桌面抓图并以BMP格式文件保存。举例:保存当前桌面图形并保存至c:test.bmp。注意路径名中的“”应以双斜杠“”代替tcombo 句柄 序号 tcombo 33821 3 选择下拉框中的某个项目,项目

38、从0开始编号,句柄为下拉框的句柄。举例:选中下拉框中的第4个项目。tlistbox 句柄 序号 tlistbox 32321 5 选择列表框中的某个项目,项目从0开始编号。举例:选中列表框中的第6个项目。tlistview 句柄 序号 tlistview 8321 5 选择报表框中的某个项目,项目从0开始编号。举例:选中报表框中的第6个项目。表 3 鼠标、键盘模拟命令命令格式 命令举例 命令说明mouse_ld 鼠标左键按下mouse_lu 鼠标左键松开mouse_rd 鼠标右键按下mouse_ru 鼠标右键松开mouse_md 鼠标中键按下mouse_mu 鼠标中键松开mouse_lclic

39、k 鼠标左键单击mouse_rclick 鼠标右键单击mouse_mclick 鼠标中键单击Ksend 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 23 页, 共 27 页mouse_dbclick 鼠标左键双击mouse_move x y mouse_move 100 100 鼠标移动至屏幕坐标x,y处,x、y为整数,指示鼠标位置。mc_move 窗口句柄 x y mouse_move 668 100 100 鼠标移动至指定窗口内坐标x,y处,x、y为整数,指示鼠标位置。举例:鼠标移至668窗口中的100、100相对位置key_press 键盘码 key_pre

40、ss 113 模拟键盘按键一次。举例:模拟“F2“ 按键一次。key_down 键盘码 key_down 113 模拟键盘按下,不松开。举例:模拟按住“F2”键key_up 键盘码 key_up 113 模拟键盘松开。举例:松开“F2”按键。key_send 字符串 key_send test123 模拟键盘输入字符串。举例:模拟键盘输入“test123”字符串表 4 IE 控制命令命令格式 命令举例 命令说明iopen 句柄 网址 iopen 264964 “http:/”在指定的WEB 页面中打开网址。句柄为“Internet Explorer_Server”类型的 web页面。iset

41、句柄 标识名 标识值 设置内容iset 264964 id kw 测试 设置页面中指定页面元素的内容。页面元素通过标识名和标识值确定。比如百度页面上的输入栏:标识名可以选id和name,相应的标识值为 kw和wd。标识名和值选取的原则是同一页面中能唯一标识此页面元素。举例:在百度输入栏输入“测试”字符串iget 句柄 标识名 标识值 set i iget 264964 name wd获取页面中指定页面元素的内容。返回值为获取的内容。举例:获取百度输入栏的字符串,并存入变量iiclick 句柄 标识名 标识值 iclick 264964 type submiticlick 264964 href

42、 jiqiao.html单击页面元素。可以实现页面上的按钮点击和链接点击。举例1:点击百度上的搜索按钮举例2:点击百度上的帮助链接iselect 句柄 标识名 标识值 0/1iselect 330408 name checkme 1选择/去选单选框、复选框。举例:选择指定的复选框Ksend 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 24 页, 共 27 页6 其他说明ksend程序同时支持命令行执行,如在Dos命令行下输入如下命令:Ksend test.tcl就可以在命令行执行test.tcl 文件,无需进入程序界面,如需加路径,则按下面的格式:Ksend c:

43、tcltest.tcl如果需要使用Package语句,需要将相关文件拷入程序执行文件所在的父目录中的 LIB目录。比如Ksend 程序在 C:testbin目录,则被调用文件需要在C:testlib目录。7 应用举例7.1 多 telnet 自动登录脚本功能说明:自动打开3个DOS窗口,并分别telnet 192.168.0.1192.168.0.3等3个地址,自动输入登录密码“good”,登录后自动执行“dir”命令。for set i 1 $i=3 incr i #执行windows的telnet命令,打开DOS 窗口win “telnet 192.168.0.$i“after 1000#

44、获取顶层窗口句柄,即刚打开的DOS窗口句柄set j gettopafter 1000ksend $j “good“after 1000ksend $j “dir“after 1000*注意:执行此脚本时,由于需要取顶层窗口的句柄,必须将ksend的“总在最顶层”选项关闭。Ksend 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 25 页, 共 27 页执行方式:将此脚本拷入TCL语言窗口,点“执行发送”即可。7.2 批量路由添加脚本功能说明:为计算机增加20条路由,从30.0.0.0到50.0.0.0。#执行windows的CMD命令,打开DOS 窗口win cm

45、d#延时2秒,等待DOS窗口建立after 2000#获取顶层窗口句柄,即刚打开的DOS窗口句柄set j gettopfor set i 30 $i=50 incr i #执行路由添加命令 ksend $j “route add $i.0.0.0 mask 255.0.0.0 120.163.86.254“after 1000前面的DOS 窗口建立和句柄捕获的过程也可以通过手工完成,通过拖动“窗口捕获”中的图标捕获DOS 窗口,然后用 tsend语句发送即可:for set i 30 $i=50 incr i #执行路由添加命令 tsend “route add $i.0.0.0 mask

46、255.0.0.0 120.163.86.254“after 1000需要注意的是,有些窗口的字符不能发送太快,否则容易出现丢字符的现象,解决方法是增加行间延时时间和字符间间隔时间(行间延时通过after语句,字符间延时在第一个批语句发送页面中设置)。同样的,可以用手工或自动的方式捕获其他的telnet、串口维护窗口,实现批量数据的配置和维护。Ksend 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 26 页, 共 27 页7.3 自动计算器脚本功能说明:自动打开计算器程序,计算一段公式后自动关闭。#提示用户是否启动程序set i msgbox 是否启动计算器程序

47、提示 4if $i=7 msgbox 用户中止 提示 0 else #启动计算器win calc#等待计算器窗口打开winwaitopen 计算器#发送公式key_send 2*4*8*16=after 2000#关闭计算器窗口winclose 计算器winwaitclose 计算器7.4 WEB 自动登录脚本功能说明:自动打开WEB页面,访问webmail并自动输入用户名、密码登录。#打开IE窗口win “C:Program FilesInternet ExplorerIEXPLORE.EXE“#延时等待after 5000#获取WEB窗口句柄set i gettoptput $i#获取WE

48、B页面句柄Ksend 帮助文档 内部公开2019-5-6 ThinkSoft 系列软件之二 第 27 页, 共 27 页set p findcw $i “Internet Explorer_Server“tput $p#打开网址iopen $p “http:/webmail“after 3000#输入用户名iset $p name textfield y00118932#输入密码iset $p type password 123456after 1000#点击登录按钮iclick $p type submit after 1000#关闭窗口wclose $iWEB窗口句柄的获取也可以通过窗口标题查找得到,可以将上面的“set i gettop”改为“set i findw Webmail”使用本软件过程中,如有任何意见和建议,请反馈至Notes ID :118932。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报