zoukankan      html  css  js  c++  java
  • UiPath-默认、SendWindowMessages和SimulateType(SimulateClick)三种鼠标键盘模拟行为

    UiPath中,模拟鼠标和键盘支持3种模式:

    Default、SendWindowMessages、SimulateType(SimulateClick)(SimulateType是输入,SimulateClick是点击)

    Default模式:SendWindowMessages、SimulateType(SimulateClick)不选或都为false时

    这三种有什么样的区别?

    我们从原理和具体表现两个角度来区分他们。

    原理:

    这是官方文档上的图。

    按照官方的说法,Default模式是基于系统驱动的方式,来模拟键盘和鼠标行为。是最接近真实的鼠标和键盘的方式。

    SendWindowMessages模式,是通过向应用程序发送Window Message进行模拟的。是基于应用的方式。

    SimulateType(SimulateClick)模式,是通过向UI元素发送消息进行模拟的。是基于UI元素的。

    于是根据原理并官方文档我们可以得出下表:

    类型 基于 兼容程度 响应速度
    Default 系统驱动(最接近真实鼠标键盘的方式) 全部
    SendWindowMessages 应用 大部分
    SimulateType(SimulateClick) UI元素 一部分

    具体表现:

    我们在桌面创建了txt,并在uipath中,创建3个Keyborad.TypeInfo活动。

    第一个我们使用Default的模式,第二种我们选择SendWindowMessages模式,第三种我们使用SimulateType模式。

    分别向这个txt文件输入文字。

    然后我们启动程序,当这个程序在向这个txt文件输入文字时,我们尝试每次在输入前,把鼠标光标挪开到其他应用程序窗口。

    我们会发现:

    类型 光标 文字
    Default 本来在其他应用程序窗口的光标,会移动到txt文本框内。 文字是一个个打出的
    SendWindowMessages 在其他应用程序窗口的光标不会被移动 文字是一个个打出的
    SimulateType 在其他应用程序窗口的光标不会被移动 文字是瞬间出来的

    总结:

    根据上表的光标特性,当我们的机器人运行在有人工作的电脑上,我们是不能使用default模式的。

    当然根据原理和具体表现的其他特征,我们还能推导出更多场景的适用方式。

  • 相关阅读:
    .Net连接字符串设置连接池大小显著提高数据库速度
    转载:MongoDB之旅(超赞,适合初学者)
    MongoDB安装成为Windows服务及日常使用遇到问题总结
    开启Windows文件共享必须开启的两个服务
    Cocos2d-JS中瓦片地图API
    EF-CodeFirst 继承关系TPH、TPT、TPC
    MVC5-4 ViewResult
    MVC5-3 Result分析
    MVC5-2 MVC的管道流与路由
    MVC5-1 ASP.NET的管道流
  • 原文地址:https://www.cnblogs.com/toseeme/p/13497944.html
Copyright © 2011-2022 走看看