【问题标题】:C#/WPF Desktop applications deployed in CI/CD azure devops to client desktop machine部署在 CI/CD 中的 C#/WPF 桌面应用程序 azure devops 到客户端桌面机器
【发布时间】:2021-10-12 23:59:02
【问题描述】:

我们有一个桌面应用程序,我们希望将其部署到我们的客户机器上(其中很多,在本地以及其他办公室)。我们目前正在使用 CI 来创建安装程序,但将软件安装到客户端机器上似乎需要做很多工作。此外,由于桌面应用程序是新的,我们期待更多的功能和改进。

是否可以在客户端计算机上执行桌面应用程序的持续部署?每次我们推送新版本时,所有已安装的应用程序也会更新。

【问题讨论】:

  • 有多种方法可以解决此问题,主要取决于您希望客户端接收更新的方式。手动获取新软件?启动时自动更新(想想 chrome),还有别的吗?当您谈论外部安装的软件时,“CD”是指使软件可供下载,而不是强制安装在其他人的计算机上。
  • 解决此问题的一种方法是构建自定义加载器。用户不是运行应用程序,而是运行加载程序应用程序。这将检查是否有来自某些可配置源的更新版本的 dll。然后运行您的应用程序。通常入口点 exe 是最小的,并从 dll 加载所有内容。一个变体省略了单独的加载程序,但仍然有一个非常小的 exe。当应用程序运行时,它会在后台下载 appdata 中所有 tona 文件夹的新版本。当您启动时,它会检查上次运行时是否有更新的版本。

标签: c# wpf azure-devops continuous-integration continuous-deployment


【解决方案1】:

这对于 Azure DevOps 来说是一项过于复杂的任务,因为您必须在每台客户端计算机中安装和注册部署代理并创建部署流。此任务更适合集中式软件控制解决方案(如EMCO Remote InstallerManageEngine Desktop Central 等)。

在这种情况下:

  1. Azure DevOps 在某个可共享文件夹中构建和发布您的应用程序。
  2. 每个客户地点都安装新版本和您的集中式软件控制解决方案。

【讨论】:

  • 管理层决定将安装程序部署在服务器文件夹上。用户可以收到有关该工具的通知,他们可以访问它以在他们的机器上手动安装它。谢谢你。 :)
猜你喜欢
  • 2018-02-19
  • 1970-01-01
  • 1970-01-01
  • 2012-03-17
  • 2011-06-10
  • 1970-01-01
  • 2023-03-16
  • 2018-05-18
  • 1970-01-01
相关资源
最近更新 更多