UIPath 是一个流行的自动化软件平台,它允许开发者在不了解多少编程知识的情况下,使用可视化的方式构建可重复的自动化工作流程。然而,UIPath 默认并不会生成独立的 EXE 文件。相反,它生成的文件格式通常是.xaml或.nupkg。尽管如此,你还是有方法将这些自动化工作流程打包,分享给其他人使用。这里就为你介绍 UIPath 生成 EXE 的原理及详细介绍:
原理:
UIPath 生成的自动化工作流程主要以 XAML (Extensible Application Markup Language) 文件为基础。XAML 文件时基于 XML 的标记语言,主要用于描述 WPF (Windows Presentation Foundation) 和 UWP (Universal Windows Platform) 界面元素以及各种工作流程。
虽然 UIPath 本身并不支持直接将工作流程导出为 EXE 文件,我们可以借助一些外部工具,通过将设计器的 XAML 文件和自定义的包装器程序(Wrapper Program)组合到一起,实现类似于 EXE 文件的功能。
详细介绍:
1. 创建自定义的包装器程序:创建一个简单的命令行程序(例如使用 C# 语言编写),该程序可以加载 UIPath.Designer.Core.dll 等所需的依赖项,并预先配置好运行环境。然后,利用 UIPath API 接口加载并运行 XAML 文件。
```csharp
using System;
using System.Activities;
using System.Activities.XamlIntegration;
using UiPath.Core;
namespace UiPathWrapper
{
class Program
{
static void Main(string[] args)
{
// 你的 XAML 文件路径
string xamlFilePath = "your-uipath-xaml-file-path.xaml";
// 加载 XAML 文件并创建工作流程
var activityBuilder = ActivityXamlServices.Load(xamlFilePath);
// 创建工作流程上下文并运行
var context = new WorkflowInvoker(activityBuilder);
context.Invoke();
}
}
}
```
2. 打包程序:编译完成后,将程序打包为可运行的可执行文件。你可以通过 ILMerge 工具将所有的依赖项合并到一个单一的 EXE 文件。这样,你就创建了一个可以直接运行工作流程的程序。
```sh
ILMerge.exe /out:UiPathWrapper.exe /targetplatform:"v4,C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.7.2" UiPathWrapper.exe UiPath.Core.dll System.Activities.dll
```
3. 分享你的自动化工作流程:将程序 EXE 文件和对应的 XAML 文件一起分享给其他人,他们只需在计算机上安装 UIPath Studio 或 UIPath Robot,即可运行你的自动化工作流程。
虽然这种方法并不能完全实现生成独立于 UIPath 的 EXE 文件,但它至少能让你分享你的自动化工作流程,并让其他人轻松运行。需要注意的是,在这种方案下,目标计算机仍然需要安装 UIPath 相关组件,以便运行我们生成的“EXE”。