任何不属于目标应用程序的窗口都被视为弹出窗口。 例如,如果您正在使用 Google Chrome 浏览器,Microsoft Windows 更新通知会被视为弹出窗口。

检测弹出窗口是通过将操作窗口的点或区域与目标应用程序窗口进行比较来实现的。 检测到的窗口如果与目标窗口不同,则标记为弹出窗口并进行处理。

系统弹出窗口(如防病毒警报、Windows 更新通知或其他应用程序(如 Teams)的通知)可能会中断甚至停止 bot 的执行。 使用常规错误处理逻辑,在 bot 运行时可能很难拦截这些弹出窗口。 弹性自动化可以检测和分类这些弹出窗口,以确保无缝的 bot 执行。

SAP 和 HTML 是当前支持的技术。

以下图表显示了一个有弹性和没有弹性的 bot 如何处理弹出窗口:自动化弹性示例

支持 packages

以下软件包目前支持处理意外弹出窗口的功能:
  • Image Recognition(版本 3.15.2 或更高版本)
  • Mouse(版本 2.14..0 或更高版本)
  • OCR(版本 2.12.1 或更高版本)
  • Recorder(版本 2.11.5 或更高版本)
  • Screen(版本 2.9.2 或更高版本)

处理弹出窗口的限制

如果系统无法处理以下场景中的弹出窗口,自动化可能会失败:
  • 弹出窗口来自使用管理员权限运行的应用程序。
    注:
    • 作为一种解决方法,您可以通过在立即运行机器人窗口中选择以管理权限运行复选框,以管理员权限运行自动化。
    • 有人值守的 Bot Runner 许可证不支持以管理权限运行
  • 弹出应用程序具有任何防御性编程,例如:弹出窗口不应最小化无法更改其 z-order
  • 命令无法处理包含以下选项之一的弹出窗口:
    • 当前活动窗口 - bot 运行开始时处于活动状态的窗口。
    • 桌面窗口 - 默认窗口或所有打开窗口后面的空间。

      这是自动化开发人员选择用于捕获或执行 Windows 桌面操作的选项。 例如,当您使用来自 Image Recognition package 的任何 action 来捕获事件时,如果在执行过程中出现意外弹出窗口,桌面或屏幕选项将不会工作。

    • 屏幕 - 可见的屏幕。

      当自动化开发人员希望在可见屏幕上(开发人员的 Windows 计算机的当前状态)启动操作时,使用此选项。

  • 弹出窗口是目标应用程序的一部分(浏览器,如 Google ChromeMicrosoft Edge)。 目标应用程序的几个示例是:
    • 验证消息。
    • Google Chrome 重新启动时,选择恢复选项卡
    • 更新 Java 版本的消息