• 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模式的。

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

  • 相关阅读:
    算法时间复杂度分析基础
    哈希(Hash)与加密(Encrypt)的基本原理、区别及工程应用
    数学之美番外篇:快排为什么那样快
    R树空间索引
    二叉树的先序/中序/后序/层次遍历
    二叉排序树的建立、先序/中序/后序遍历、查找
    spring利用xml和注解形式实现定时任务
    javabean转成json字符首字母大写
    简单了解动静分离和前后端分离
    长连接与短连接
  • 原文地址:https://www.cnblogs.com/toseeme/p/13497944.html
Copyright © 2020-2023  润新知