UI 自动化操作失败,出现“无法获取 UI 元素”或“未能获取窗口”错误

本文可帮助你解决在 Power Automate Microsoft UI 自动化操作失败时可能会收到的错误消息。

适用于: Power Automate
原始 KB 数: 5003385

现象

UI 自动化操作失败,Power Automate 中出现以下错误消息之一:

  • 未能获取 UI 元素

  • 无法获取窗口

验证问题

Power Automate 桌面版能够在创作桌面流期间首次捕获元素时与元素成功交互。

原因 1:应用程序窗口名称或 UI 元素在屏幕上不可用

解决方法

确保在操作执行时显示 UI 元素或屏幕(窗口)可用。

原因 2:在相应操作中选择的 UI 元素不正确

解决方法

确保操作的 UI 元素输入参数填充列表中的正确 UI 元素。

原因 3:应用程序窗口名称或元素的基础结构已更改

应用程序的窗口名称或 UI 元素的基础结构已更改。 因此,最初用于查找元素的 UI 选择器不再适用。

解决方法

若要解决此问题,请确保 UI 元素的选择器有效。 为此,请导航到 “选择器生成器 ”窗口,然后按照以下步骤操作:

  1. 测试选择器

    Power Automate 使您能够测试选择器并确保您的 UI 自动化流按预期运行。 借助测试桌面和 Web 选择器的功能,可以快速高效地自动执行应用程序和网页交互。

  2. 通过 “新建 ”按钮捕获特定 UI 元素的其他选择器。

  3. 修复 UI 元素的选择器

    修复选择器是一项功能强大的功能,可用于轻松直观地更正无效的选择器。 通过为自动化需要与之交互的 UI 元素自动生成修复选择器,Power Automate 桌面版使维护自动化流变得简单。

  4. 如果修复功能无法自动修复选择器,则需要手动编辑选择器以创建更可靠的选择器。 可以编辑 UI 元素的选择器中使用的属性、它们的值和操作数。

    为此,请在失败后再次捕获元素,并将新选择器与旧选择器进行比较,以确定差异。 可能有一个或多个不同的元素或属性。 编辑选择器以确保它仅包含不会更改的静态元素或属性。 例如,如果窗口名称末尾有动态部分,则可以将其修改为“Name – Starts with - MyWindowName”,而不是“Name – Equal to – MyWindowName (2)”。 通常,应删除任何动态值(如数字),并相应地修改相关运算符(结尾、 结尾包含等)。 或者,如有必要,应从选择器路径中删除整个元素。 有关详细信息,请参阅 生成自定义选择器

  5. 如果在执行时 UI 元素不可用,请考虑分别添加“等待窗口内容”或“等待网页内容”操作。

  6. 请注意,应用程序(例如版本升级)或网页下划线代码中可能已发生更改,UI 元素的选择器可能有所不同。 在这种情况下,必须重新捕获 UI 元素。

替代解决方法

Surface 自动化可用作自动化应用程序的替代方法。 有关最佳做法,请参阅 如何使用鼠标、键盘和 OCR 自动执行操作。

原因 4:应用程序使用提升的权限与运行进行交互

应用程序运行的权限比Power Automate 桌面版更高。

解决方法

应用程序和Power Automate 桌面版应使用相同的权限运行。

默认情况下,Power Automate 桌面版不会使用提升的权限运行。 也可以将Power Automate 桌面版设置为以管理员身份运行。 有关详细信息,请参阅 使用提升的权限运行 Power Automate。

另一个选项是清除应用程序属性窗口的“兼容性”部分中的“以管理员身份运行此程序”复选框

详细信息

若要解决 UI 自动化操作失败时可能收到的其他错误消息,请参阅 桌面流操作无法获取 UI 元素时发生错误。