根据受影响的应用程序,Windows 中的缩放行为可能有所不同。这可能导致工作流中的不一致,在处理 UI 自动化的时候,特别是那些包有 CursorPosition 和 ClippingRegion 属性的活动,例如 Click, Hover, Type Into, Click Text 及其它一些活动的时候就会出现问题。
这种情况会出现在由 2018.2 版本之前的 Studio 创建的工作流。它们需要通过 ScaleCoordinates 工具来迁移到 DPI感知 的机器人上运行(2018.2版)。
为了灵活高效地在 2018.2 版本中使用旧的工作流程,ScaleCoordinates 工具可以迁移单个或者文件夹下的所有流程文件。
如果使用 DPI 感知的机器人执行,则不需要对 Studio 2018.2 之前创建的工作流进行更改,也不需要对使用此工具后不支持 DPI 的机器人执行新的工作流。
非常重要
在 2018.2 版本之前的 Studio 中,使用在非标准 DPI 的 UI 自动化工作流上的 ScaleCoordinates 迁移工具。在常规 DPI 上创建的工作流不需要在 DPI 检测功能的机器人上执行迁移。
无论要执行何种类型的迁移,首先需要:
- 打开命令提示符实例。
- 导航到 UiPath 平台的安装目录下 ScaleCoordinates 迁移工具的位置
- 使用以下之一的命令
3.1 迁移单个文件:
UiPath.ScaleCoordinates <input_xaml_file_path> <output_xaml_file_path> (--normalize_from | --denormalize_to)=<scaling_percentage>
3.2 迁移特定文件夹下的多个文件。
UiPath.ScaleCoordinates <folder_path> (--normalize_from | --denormalize_to)=<scaling_percentage>
请记住,您可以规范化在 Studio 2018.2 中执行的工作流,以及调整一个规范化的项目,以便在一个非标准的DPI 上使用旧的机器人。下面是单个和多个项目的这些情况的例子。
为 DPI 感知的机器人标准化旧的工作流
假设你需要使用一个已有的工作流,例如 ProcessingInvoicesInSAP.xaml
, 运行在150% 的缩放比率, DPI 感知的机器人上。该工作流是在2018.2之前的Studio版本中设计的,因此需要使用以下命令来标准化以指定比例百分比运行:
UiPath.ScaleCoordinates C:\Accounting\Automations\ProcessingInvoicesInSAP.xaml C:\Accounting\Automations\NormProcessingInvoicesInSAP.xaml -normalize_from=150
迁移的工作流将在 C:\Accounting\Automations 位置,文件名是 NormProcessingInvoicesInSAP.xaml
迁移时不会删除原始工作流文件。NormProcessingInvoicesInSAP 文件可以在150% 缩放比例,DPI 感知的机器人上运行。
现在假设您希望迁移多个工作流,以便以 150% 的比例执行。在多个文件上运行上面的命令是一项繁琐的任务,因此建议使用从整个文件夹迁移文件的命令。如果您需要迁移的文件位于 C:\Accounting\Automations
目录中,并且希望它们以 150% 的比例因子执行,那么命令如下所示:
UiPath.ScaleCoordinates C:\Accounting\Automations -normalize_from=150
在 C:\Accounting\Automations 文件夹下的所有文件都可以在150% 比例因子通过 DPI 感知的机器人运行 (v2018.2)。
注意:
批规格化不会将工作流文件导出到输出文件夹,这意味着指定文件夹中的文件将被替换。建议先创建备份。
为非DPI感知的机器人非标准化新的工作流
由于 2018.2 的机器人都是 DPI 感知的,在 Studio 2018.2 中创建工作流是非 DPI 感知的。
然而,在较老的机器人上的非 DPI 感知机器人上执行它们会导致元素检测不一致.为了避免这些问题,你可以使用 ScaleCoordinates 工具来迁流程到指定的比例因子并运行在旧的机器人上。
就像规范工作流一样,可以在单个工作流文件上或在指定路径中的多个工作流文件上执行操作。
假设你在 Studio 2018.2 中设计了 ProcessingInvoicesInSAP.xaml 这个文件,并想让它在 150% 比例因子的 非DPI感知 的机器人上运行,可以使用以下命令来迁移工作流:
UiPath.ScaleCoordinates C:\Accounting\Automations\ProcessingInvoicesInSAP.xaml C:\Accounting\Automations\DenormProcessingInvoicesInSAP.xaml -denormalize_to=150
流程文件 DenormProcessingInvoicesInSAP.xaml
现在已经可以在 150% 比例因子的旧版本机器人(2018.2之前)上运行了。
类似地,满足相同设计条件的多个工作流可以迁移到在非 DPI 感知的机器人上以150%的比例因子执行。请记住原始文件是被覆盖的,所以在迁移它们之前一定要创建备份。
在这种情况下,必要的命令看起来是这样的:
UiPath.ScaleCoordinates C:\Accounting\Automations -denormalize_to=150
现在,您可以在 非DPI感知 的机器人上以150%的比例因子执行 C:\Accounting\Automations 目录中的工作流文件。
返回目录
UiPath 常见问题及解决办法汇总
更多 UiPath 相关的资讯,请关注公众号:流程自动化机器人教程
由于简书禁止直接在文章中插入公众号二维码,请点击 这里 了解添加该公众号的细节。